整洁的测试遵循的规则


F.I.R.S.T


整洁的测试遵循以下5条规则


快速(Fast) 测试应该够快。测试应该能快速运行。测试运行缓慢,你就不回想要频繁地运行它。如果你不频繁运行测试,就不能尽早发现问题,也无法轻易修正,从而也不能轻而易举地清理代码。最终,代码就会腐败。


独立(Independent) 测试应该相互独立。某个测试不应该为下一个测试设定条件。你应该可以单独运行每个测试,以及任何顺序运行测试。当测试互相依赖时,头一个没通过就会导致一连串的测试失败,使问题诊断变得困难,隐藏了下级错粗。


可重复(Repeatable) 测试应当可在任何环境中重复通过。你应该能够生产环境、质检环境中运行测试,也能够在无网络的列车上用笔记本电脑运行测试。如果测试不能在任何环境中重复,你就总会有个解释其失败的接口。当环境条件不具备时,你也会无法运行测试。


自足验证(Self-Validating) 测试应该有布尔值输出。无论是通过或失败,你不应该查看日志文件来确认测试是否通过。你不应该手工对比两个不同文本文件来确认测试是否通过。如果测试不能自足验证,对失败的判断就会变得依赖主观,而运行测试也需要更长的手工操作时间。


及时(Timely) 测试应及时编写。单元测试应该恰好在使其通过的生成代码之前编写。如果在编写生成代码之后编写测试,你会发现生成代码难以测试。你可能会认为某些生产代码本身难以测试。你可能不会去设计可测试的代码。

原文地址:https://www.cnblogs.com/ahao214/p/5127513.html