引言git
BDD是对TDD理念的扩展。BDD强调有利害关系的技术团体和非技术团队都要参与到软件开发过程当中。能够把它当作一种强调团体间合做的敏捷方法。大多数采用某种敏捷方法的团队最终都会遵循BDD的许多原则。在编写单元测试的时候,尽可能使用BDD风格为测试命名。BDD风格强调使用完整的、描述性的、便于业务用户理解的名称或术语,避免使用技术术语。BDD但愿类、方法和变量的名称尽量地反映平常用语。github
1、开发环境和工具工具
1.1 Visual Studio 2013单元测试
1.2 Resharp 10.0.2 或以上版本测试
1.3 SpecFlow加密
Visual Studio菜单中工具->扩展和更新。spa
Nuget3d
2、需求blog
输入一段明文,用Des的加密方式加密成密文。开发
输入一段密文,用Des的解密方式解密成明文。
3、代码结构
4、添加情景或功能文件
修改情景
5、编写测试代码
6、运行测试代码
建议先编译代码再运行。
测试理所固然的失败了,由于尚未实现功能。
7、编写代码实现功能
测试经过
以相似的方式实现解密的需求。
8、添加需求
输入空字符串时,用Des加密,应返回空字符串。
输入null时,用Des的加密,应抛出ArgumentNullException。
9、添加新的情景
10、编写新的测试代码
11、再次运行测试代码
加密空字符串时,没有返回空字符串,不符合预期。
加密null时,抛出了ArgumentNullException,符合预期。
12、调整代码使加密空字符串知足需求
十3、源码
https://github.com/ErikXu/SimpleBDD
十4、本人Github
https://github.com/ErikXu
最近想把本身的Github经营起来,欢迎你们多交流。