3.3 实现运行控制机制
运行控制发生在测试脚本层面,它针对所有已经发布并且形成测试脚本的用例。分布式环境下的运行控制通过图3实现。
管理端:管理端用JAVA编写,测试用例脚本由测试工程师提交。管理端主要完成以下任务:运行控制的决策系统,负责建立并维护运行队列,控制运行策略和信号灯;管理端将测试用例集加入运行队列中。运行队列中包含所有已经提交运行但未运行完成的用例。
执行端:执行端根据管理端的决策系统,来执行运行队列中的测试脚本,其中运行控制的执行系统,负责分配测试脚本,并按照指定策略启动脚本等也是执行端的功能;
信号灯组:信号灯组主要描述的是准备运行的测试脚本首先判断自己的信号灯,其中信号灯的结构在 run_signal结构中已经给出。通过对控制点进行判断,来决定是否运行脚本。主要功能包括:一个受管理端控制的表,里面有针对不同用例的信号灯;
运行队列;通过连接数据库DB,得到测试脚本排队表。再根据执行端确定的顺序执行自动化测试。其中,运行队列中应包含对运行过的脚本和未运行的脚本进行判断处理。主要功能包括:由管理端建立的等待运行的测试用例(脚本)排队,中心数据库(DB)的表。
表1是工作设计文档。
运行队列是可维护的,可以通过改变某个用例的状态(启动、等待、暂停、挂起)来控制用例的运行行为,还可以改变(属于自己的)用例的运行顺序。管理员可以对队列中所有用例的状态和顺序进行调整。运行后的用例加入另一个队列(已运行队列),运行失败的用例将标记为"失败"状态,等待修改或重新启动。