构建理想的模块自测结构[3] 软件测试
4) 一份测试代码来运行多份测试用例
怎样让一份测试程序可以进行多组数据的测试和结果的比较呢?3)中已经将测试用例分门别类,并由相应的目录结构组织起来。此时测试程序只需每次从测试目录中取出一个测试用例文件,进行初始化,然后执行测试,最后比较测试结果;测试完一个用例文件,再取下一个文件进行测试,如此循环直到所有的用例文件都测了一遍,详见图1-4。
图1-4一份测试代码测试多个测试用例的流程图
2.测试用例管理方案设计
若再加上边界数据要测试的数据组数就更多了,一般CXXUNIT系列编写的测试代码是每组测试数据(其实一组数据就对应一个测试用例)都要编写初始化代码,然后调用相应功能函数测试。这样导致:
在自动测试的整个过程中,测试用例的可维护性会影响到将来测试用例增加的难易度,良好的自测程序应能很方便的扩充测试用例。
在采用CXXUNIT系列测试工具开发测试代码时,对于一些简单的测试可以测试用例就嵌在测试代码中。但当某一个功能或函数要进行很多组数据(如边界数据)的测试时使用这种方法就得重复编写测试代码,可能每增加一个测试用例就要编写大量的重复测试代码。
举例:要测试周期会议预约功能的代码,要测试以下几组数据:
1)每日召开的周期会议
1.1)按召开次数预约的周期会议
1.2)按开始时间、终止时间预约的周期会议
2)每周召开的周期会议
……(内容和1.1、1.2一致)
3)每月召开的周期会议
……(内容和1.1、1.2一致)
4)每年召开的周期会议
……(内容和1.1、1.2一致)
随着测试数据组数的增加,将出现大量做重复动作的测试代码,这些测试代码之间唯一的不同是由于初始化的数据不一样而已。