TDD规则

前端之家收集整理的这篇文章主要介绍了TDD规则前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

@H_502_2@Michael Feathers@H_502_2@@H_502_2@Artima@H_502_2@自己的@H_502_2@Blog@H_502_2@ @H_502_2@2005-9-9 @H_502_2@发表了一篇@H_502_2@A Set of Unit Testing Rules@H_502_2@文章,提出了如下的代码不是单元测试:@H_502_2@

@H_502_2@1. 访问数据库@H_502_2@It talks to the database@H_502_2@

@H_502_2@2. 访问网络@H_502_2@It communicates across the network@H_502_2@

@H_502_2@3. 访问文件系统@H_502_2@It touches the file system@H_502_2@

@H_502_2@4. 不能和其他的单元测试代码同时运行@H_502_2@It can't run at the same time as any of your other unit tests@H_502_2@

@H_502_2@5. 做特殊的事情运行测试的代码@H_502_2@You have to do special things to your environment (such as editing config files) to run it.@H_502_2@

@H_502_2@使用一句话概括就是:把你的单元测试代码的逻辑和耗时的、与测试逻辑无关的代码分开;单元测试应该是纯粹的单元测试。@H_502_2@

@H_502_2@单元测试要严格遵守这些原则有时候很困难,需要变通的办法,我的想法是:@H_502_2@

@H_502_2@1. 测试逻辑概念函数和需要交涉的功能函数分开。如果一个测试逻辑概念函数,需要和文件、网络、数据库打交道,那么尽量的分开它们;@H_502_2@

@H_502_2@2. 文件需要的内容以二进制的形式插入到代码中。这虽然很笨拙,但是消除了对文件的依赖。@H_502_2@

@H_502_2@3. 建立配置文件。有时候不得已还需要建立配置文件@H_502_2@

@H_502_2@4. 使用错误的消息输出。一旦配置文件没有设定好,通过输出消息报告给用户

猜你在找的设计模式相关文章