定义构件混合测试自动化框架如下:
定义 构件混合测试自动化框架(Component Hybrid TestAutomation Framework, CHTAF)为一个三元组(TC, TS, TR)。其中,TC(Test Cases)表示测试用例数据。对被测的每个方法,都有多组输入参数值与预期输出值,并以XML 格式组织;
TS(Test Script)表示测试脚本:TS={TF∪TSu∪TE∪A},4 个元素分别表示测试固定设施(Test Fixture)、测试套装(TestSuites)、测试执行(Test Execution)、断言(Assertions)。测试脚本遵循改进后的xUnit 框架,
对于每个测试用例都进行测试固定设施的初始化和清理工作,同时,测试执行部分转变为参数化测试;TR(Test Runner)表示测试驱动。经过以上的改进,测试驱动的工作至少应包括:
(1)读取并解析测试脚本文件和测试用例XML 文件。
(2)迭代测试方法的各个测试用例,对每个测试用例依次执行:建立测试固定设施(包括实例化该测试用例),将测试用例中的输入值和期望值以参数形式传递给测试脚本并调用测试方法执行,调用断言验证实际输出与期望值是否一致,拆卸测试固定设施。
这四阶段的具体实现都在测试脚本中定义,由测试驱动进行调用。
(3)依次对每个要测试的方法执行步骤(2)。
3. 结束语
本文将xUnit 和数据驱动测试框架结合并改进,设计了基于脚本的构件混合测试自动化框架CHTAF,能够实现从脚本生成到结果记录整个过程的自动化。该框架兼有xUnit 和数据驱动测试框架的优点,能够充分复用测试固定设施,用测试套装方便地组织和运行多个测试,
分离测试数据与测试代码,降低测试代码的复杂性,方便定制测试用例,并且在改进后保证了测试的独立性。今后的研究方向是丰富构件测试类型、充分考虑构件的不同测试方法序列以及通过扩展定制特性增强测试脚本能力等,使构件测试自动化水平不断提高。