一种STP_KA测试环境自动部署方法研究
2020-12-01
(卡斯柯信号有限公司,北京 100070)
0 概述
STP_KA测试环境部署过程是测试工作中必不可少的重要环节,正确全面的测试环境能够为后续测试的开展提供强有力的保障,而错误的测试环境会导致后续的测试工作功亏一篑。
目前STP_KA系统回归测试的环境部署为人工手动搭建,首先需要人为比对测试申请单内容与配置库待测软件的信息是否一致;另外,需要人为按照流程下载相应待测软件到服务器,并将待测软件、数据、配置文件等放入相应工控机、服务器、车载主机;因此,目前的环境搭建过程会耗费大量时间,且全程人为操作加大失误风险。
本文提出一种STP测试环境自动部署方法及装置,不仅有效缩短环境部署的时间,提升了环境部署效率,而且减少人为参与,避免人为失误,确保环境部署的正确性。
1 STP_KA系统测试架构分析
STP_KA系统测试架构由地面主机子系统、车载子系统、模拟联锁和终端子系统构成,其连接关系如图1所示[1]。其中,车地通过电台通信,其他子系统通过网络进行通信。
图1 STP_KA系统测试架构图
由图1可知,维护终端与车务终端软件是同一个终端软件,仅配置不同,因此环境部署有四个主要元素:地面主机、模拟联锁、车载主机、车务终端。每个元素均由数据、配置和对应软件组成,自动部署设计时会考虑对不同元素分别组包。
2 STP_KA测试环境搭建分析
目前实验室搭建测试环境过程如图2所示:
图2 实验室搭建测试环境过程图
(1)审查K2[2]测试单:主要比对K2测试单中填写的待测软件md5码与ClaearCase中的软件是否一致,查看K2测试单中填写的软件位置是否与ClaearCase中一致。
(2)从ClaearCase中获取待测软件,人为存放在目标服务器中,并转存到相应的目标机器中。
(3)数据组获取数据及配置文档,人为存放在目标服务器。
(4)依次修改地面、终端、车载配置文件并启动各软件。
(5)调试环境,反复修改配置直到软件正常启动且连接正常。
3 STP_KA测试环境自动布署实现方案
基于STP_KA系统架构以及目前环境搭建流程,提出一种STP测试环境自动部署方法及装置,如图3所示,软件KII.exe(以下简称KII)通过K2接口将待测软件下载至目标服务器,Modify.exe从服务器获取待测软件,并存放在目标机器指定路径,完成配置修改并启动软件,完成环境的自动布署。这个自动部署方案不仅有效缩短环境部署的时间,提升了环境部署效率,而且减少人为参与,避免人为失误,确保环境部署的正确性。
3.1 通过K2测试单获取待测软件
启动KII软件,只需测试人员输入K2单号,既可自动实现K2软件MD5码校验、待测软件自动下载功能。如图4所示,该方案实现过程如下:首先在moss上提交IT申请,申请KII与K2的接口,确定输入和输出,KII运行在桌面云内,通过向接口输入测试单号,接口反馈给KII该测试单号的所有信息,KII通过解析测试单信息,获取所需的虚拟标签、软件标签、软件获取路径以及备注信息中的MD5码,并整合以上信息,将其作为参数输入给CC库,并根据软件标签自动从CC库下载对应路径下的软件,KII自动识别MD5码,将其与测试单中输入的MD5进行比较,若一致,则存放在目标服务器里,部署到DebugRoom环境内,提示信息栏会输出某软件已部署至服务器的提示,如图5所示;若不一致,提示信息栏会显示不一致信息,需要进行人工确认,如图6所示。
3.2 自动部署待测软件
环境部署工具(以下统称“Modify”,如图7),首先进行测试环境的梳理,制定部署方案,因STP_KA测试使用的机器较少,所以经研究确定,使用psexec工具将自动生成的部署脚本在远程机器上运行,并从本地获取配置信息及待测软件,对于站场数据文件压缩包,Modify将自动将压缩包解压,同时去掉所有文件的只读属性,读取各个软件的配置文件,并实时显示到界面上,测试人员可在界面上对多个软件的配置信息同时进行人工修改,修改后无需手动保存,Modify会自动将其保存,也对于已修改的配置文件进行选择性的部署到目标机器,同时软件也会对每次部署的配置文件进行自动备份,也可读取历史数据文件,方便对于测试问题的复现以及测试数据的记录。
环境部署工具实现以下功能:
(1)对目标IP进行ping操作,并反馈通信状态;查看要部署的测试环境的通信状态,是否具备自动化部署条件,若不满足,给出提示,方便测试人员查看。
(2)将数据、软件、配置等输入文件按照STP地面、车载、终端、联锁的环境部署要求分别整理、组包;地面、车载、终端、联锁分别有固定的安装路径,且对数据、软件、配置等有明确的安装形式。本功能即按照地面、车载、终端、联锁系统对数据、软件、配置安装规律,对KII.exe获取的数据、配置、软件进行组包,分别以Host、Onboard、End、Interlock命名,放在目标共享文件夹中,方便后续步骤调用。
图3 测试环境自动部署结构图
(3)清空目标机器路径下相关文件夹。
(4)将各组包分别下发至对应的服务器/车载主机/工控机;操作步骤二(2)中组包好的压缩文件,按照E-deployment.exe配置文件中定义的地面、车载、终端、联锁数据存放路径,依次解压、存放。
(5)独立部署软件功能,实现软件自启动;该功能满足测试过程为确认问题,更换软件版本的需求。
图4 KII实现过程图
图5 软件MD5与测试单输入一致的界面显示图
图6 软件MD5与测试单输入不一致的界面显示图
图7 环境部署工具界面
4 总结
本文通过根系STP_KA测试架构及环境搭建过程,实现了STP_KA测试环境自动部署。对研发人员、数据组人员和室内仿真测试人员应具有一定的实际使用意义。另外,通过K2测试单获取待测软件部分可以扩展适用于其他产品,一定程度上提高其他产品的测试效率。