1)数据自包容。
每个test case负责自己的测试数据。
2)Test environment/target product独立。
应当先假设所需的测试环境是独立的。测试前你可以手动、自动创建测试环境。
运行测试代码时,把这些相关环境数据配置进去。
被测试的对象,也应该是独立的。如果需要把测试数据部署到测试对象上,也应该是建立好对象之后注入的,而不是在构建测试对象时同时在测试对象里构建测试数据。这会产生较大的耦合。
3)自解释。
测试代码里应该把测试目的写清,简要的tese case描述。这样利用程序(比如javadoc),就能生成对应test requirment的简要case doc.
测试代码写入tag(有层次的tag),表示此用例的分类。
4)TestResult可回溯。
测试框架应该能够方便的从exception,failed的标记处获test case的描述(自解释部分生成)。
5)Good format report.
不仅是美学上的漂亮,也需要逻辑上的漂亮--容易定位问题。
6) 为提高测试效率。考虑并行执行不相干case。这个是高级闲人话题了...,一般小项目用不着。
如果不怕苦,以上可忽略...
每个test case负责自己的测试数据。
2)Test environment/target product独立。
应当先假设所需的测试环境是独立的。测试前你可以手动、自动创建测试环境。
运行测试代码时,把这些相关环境数据配置进去。
被测试的对象,也应该是独立的。如果需要把测试数据部署到测试对象上,也应该是建立好对象之后注入的,而不是在构建测试对象时同时在测试对象里构建测试数据。这会产生较大的耦合。
3)自解释。
测试代码里应该把测试目的写清,简要的tese case描述。这样利用程序(比如javadoc),就能生成对应test requirment的简要case doc.
测试代码写入tag(有层次的tag),表示此用例的分类。
4)TestResult可回溯。
测试框架应该能够方便的从exception,failed的标记处获test case的描述(自解释部分生成)。
5)Good format report.
不仅是美学上的漂亮,也需要逻辑上的漂亮--容易定位问题。
6) 为提高测试效率。考虑并行执行不相干case。这个是高级闲人话题了...,一般小项目用不着。
如果不怕苦,以上可忽略...