@songying
2018-06-29T12:46:48.000000Z
字数 587
阅读 1066
单元测试
- 自动化(Automatic)
- 彻底的 ( Thorough)
- 可重复( Repeatable)
- 独立的(Independent)
- 专业的 (Professional)
调用测试自动话和检查结果自动化
维护这个环节最重要的在于: 不要引入一个由于需要手动步骤而打破这个自动化模型的测试。对于测试所需要的任何条件(数据库, 网络连接等)都应该让它们成为测试自身的一个自动化组成部分。
它们测试了所有可能会出现问题的情况
- 一个极端: 对于每行代码,代码可能达到的每个分支,每个可能抛出的异常等,都可以作为测试的对象
- 另一个极端: 仅仅测试最可能的情况: 边界条件,残缺,和畸形的数据等
每个测试应该独立于所有其他的测试,而且还必须独立于周围的环境。
测试应该能够以任意的顺序一次又一次的执行,并且产生相同的结果。
每个测试应该有很强的针对性,且独立于环境和其他的测试。
在编写测试时, 确保你一次只测试了一样东西
一个测试函数应该专注于产品代码中的一个函数,或者组合起来并共同提供某个特性的一组函数。
必须使用和产品代码相同的专业水准来编写和维护测试代码。
- 在修正bug的同时改进测试
- 通过引入bug来证明测试