Machine.Specifications 介绍
Machine.Specifications简称 MSpec
,是一个行为测试驱动(BDD)框架,它本身并不是测试框架,而是在nUnit的基础上,作了一层友好性的封装。
行为驱动开发(Behavior-Driven Development)是领域驱动设计开发(Domain Driven
Design)在测试领域的应用,剔出代码噪音。 因此,MSpec封装nUnit之后的重点就在于,体现测试本身的业务概念:
系统或者模块在某种特定环境(Context)下的行为/功能(Specifications),而不是某个类或某个方法是如何实现的。
这种基于上下文/功能描述(Context/Specification)的概念,可以与用户故事很好的整合,从而,跨越代码与需求流程之间的鸿沟。
注意,BDD本质上仍然是测试驱动.
几个特点:
- 提供插件支持Resharper和TestDriven.Net运行它的测试, 并能输出非常优美的Html的测试报告。
- 使用Delegate的方式写测试代码,需要习惯 =()=>的方式。
- 测试用例在类级别,而不是方法级别。就是说,一个类是一个测试,而不是一个方法。 好处,测试环境可以继承,大幅减少重复代码,使得测试的组织结构更简洁和合理。
- 用Extension封装断言语法,使得测试断言更具阅读性,接近自然语言。如 result.ShouldEqual(“TestResult”)
Machine.Specifications 官网
https://github.com/machine/machine.specifications
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。