论文部分内容阅读
随着软件测试技术的迅速发展,自动化测试理论和工具都已相当成熟,然而对于与硬件设备相关联的命令行界面(Command Line Interface,CLI)测试,市场上仍未出现稳定的自动化测试工具。CLI是迭代开发的,新研发的每个CLI版本都必须进行回归验证。因此,完成CLI功能的自动化测试任务不仅能够缩短测试周期,还可以有效节省成本。本文是从联想服务器的集成管理模块(Integrated Management Module,IMM)研发项目中拓展出的一个子项目。本文在分析软件测试行业主流的自动化测试框架基础上,提出了一种基于数据驱动脚本框架的CLI自动化测试方法。同时,本文设计出一种单向调用的分层架构来具体实现该方法,该分层架构包括上层的系统框架层、下层的通信传输层和测试执行层,上层能够调用下层,反之不行,而且同层次之间不能相互调用。系统框架层用于提供用户界面、配置运行环境和调用下层模块,其特征在于有效管理整个测试过程,和下层架构一起提供完整的自动化测试功能;通信传输层负责测试机和被测试机之间的远程通信,其特征在于采用模块化思想,由SSH和Telnet两个远程登录模块构成;测试执行层用来执行整个测试任务,其特征在于运用数据驱动脚本的测试思想,将测试数据从测试脚本中分离并单独存放,改善了数据和脚本的紧耦合关系,而且该层主要应用脚本引用数据变量的方式来驱动测试的正常执行。同时,本方法的图形用户界面运用PyQt工具包搭建,通信传输层和测试执行层的脚本程序使用Python语言编写。本文实现的测试方法与现有技术相比,具有以下积极效果:系统应用单向调用形式的分层架构,确保了自身的有序、协调运作;上层结构提供的图形界面保证用户操作的简单便利性,减少CLI测试的出错频率;下层结构的通信传输层采用模块化思想将SSH和Telnet两个远程登录模块组合使用,既保证信息安全,又满足不同操作系统用户的使用需求;下层结构的测试执行层采用数据驱动脚本的形式,改善数据与脚本的紧耦合关系,有效减少脚本的维护量,提高脚本的复用度;测试脚本不仅输出实时结果,还打印不同等级的日志文件,优化测试效果,便于后期的检查和调试。