一种基于Openstack下云平台自动化测试实施方法与系统技术方案

技术编号:17304384 阅读:77 留言:0更新日期:2018-02-18 22:22
本发明专利技术适用于软件测试技术领域,提供一种基于Openstack下云平台自动化测试实施方法与系统,所述方法包括三个大步骤:配置自动化测试方案;搭建自动化测试环境;执行并分析自动化测试方案。本发明专利技术中,首先创建自动化测试方案,然后运维云平台解析自动化测试方案,调用OpenStack云平台外部接口,投递两虚拟机对应待测环境和测试环境,经过运维云平台、消息服务器和虚拟机中的消息处理引擎组成的消息机制处理消息,完善待测环境和测试环境虚拟机配置,执行自动化测试工作指令。整套实施方法的功能稳定可靠,结构清晰,可扩展性高,实用性强。

An implementation method and system for automatic test of cloud platform based on Openstack

【技术实现步骤摘要】
一种基于Openstack下云平台自动化测试实施方法与系统
本专利技术属于软件测试
,尤其涉及一种基于Openstack下云平台自动化测试实施方法与系统。
技术介绍
随着软件测试技术的发展,人们已经逐渐从最初的纯手工测试转变到手工与自动化测试技术相结合的测试方法。近年来,随着软件系统的升级换代和对测试人员技术水平要求越来越高,自动化测试技术发展已成为了一种趋势,越来越受到广泛关注和重视。在自动化测试技术应用与推广下,自动化测试技术已逐渐的开始深入到软件产品质量的各个环节。自动化测试用例数量也在逐渐的增加,运行的次数和频率越来越高。当前软件产品开发迭代周期快,对软件产品回归测试周期也有所要求,这就要求测试人员对每日构建的想法和实践进行落实。具体特征体现在,无人值守,覆盖颗粒度高,测试报告详细和完整等具体表现。在实施自动化测试过程中对资源利用率要求比较严格,若是资源不够的状态,在仅限的资源上运行自动化测试用例和平台时,就会因为资源不足而导致运行缓慢,服务器宕机等现象,最后连自动化测试报告也无法获取,严重影响自动化测试技术和平台的推广与应用,不利于测试工作的开展与推进。
技术实现思路
鉴于上述问题,本专利技术的目的在于提供一种基于Openstack下云平台自动化测试实施方法与系统,旨在解决现有测试方案自动化程度不高、统计数据分析较差的技术问题。一方面,所述基于Openstack下云平台自动化测试实施方法包括下述步骤:步骤S1、配置自动化测试方案;步骤S2、搭建自动化测试环境;步骤S3、执行并分析自动化测试方案。进一步的,所述步骤S1具体包括:S11、使用SVN客户端管理工具维护SVN服务器所创建的待测环境指定项目的SVN目录以及测试环境指定项目的SVN目录;S12、配置运维云平台中基础参数,包括配置虚拟机镜像模板记录、虚拟机资源配置记录以及项目版本,然后记录项目版本关联的待测环境模板和测试环境模板;S13、填写本次自动化测试的概况信息,选择测试的项目版本后,配置本次测试的待测环境和测试环境,创建自动化测试方案,包括普通自动化测试方案、定时自动化测试方案或多节点自动化测试方案。进一步的,所述步骤S2具体包括:S21、运维云平台后台处理所述创建的自动化测试方案并解析;S22、运维云平台根据自动化测试方案的需求,调用OpenStack的外部接口,OpenStack云平台投递虚拟机,包括投递待测环境虚拟机和测试环境虚拟机;S23、运维云平台记录执行自动化测试方案时产生的业务数据,记录存放在运维云平台对应的数据库内;S24、运维云平台组织修改待测环境和测试环境虚拟机的指令,生成组织消息并发送至消息服务器中的发送消息队列,消息服务器读取所述发送消息队列,按照发送消息的虚拟机的mac地址,点播发送给指定虚拟机。进一步的,所述步骤S3具体包括:S31、待测环境虚拟机中的消息处理引擎接收到消息后,解析其中的json格式的消息体内容,转化为xml格式内容,提取所有需执行的指令逐条执行;S32、测试环境虚拟机中的消息处理引擎接收到消息后,解析其中的json格式的消息体内容,转化为xml格式内容,提取所有需执行的指令逐条执行;S33、测试环境虚拟机中的消息处理引擎逐条执行消息体中的指令,当所有指令都执行成功,将执行状态消息记录为成功,否则记录为失败,将执行状态消息发送至消息服务器并保存在接收消息队列中;运维云平台接收从消息服务器反馈的执行状态消息,根据执行状态消息标记自动化测试方案是否执行完成;S34、测试环境虚拟机中的RobotFramework自动化测试平台完成自动化测试后,将测试结果数据存入数据库指定位置;S35、访问运维云平台的自动化测试模块,查看自动化测试方案对应的测试报告,查看报告中的测试执行概况数据。进一步的,上述步骤S13中,在配置本次测试的待测环境时,在待测环境配置区内,选择SVN目录中对应本次测试范围的目录,选择虚拟机资源配置项,默认选择测试的项目版本中配置的待测环境虚拟机镜像模板;在配置本次测试的测试环境时,在测试环境配置区内,选择SVN目录中对应本次测试范围的目录,选择虚拟机资源配置项,默认选择测试的项目版本中配置的测试环境虚拟机镜像模板,创建普通自动化测试方案,如果填写了定时规则,则创建定时自动化测试方案,如果添加了测试环境节点,还需要继续选择附加的测试环境,直至补足覆盖完全测试范围的测试环境为止,创建多节点自动化测试方案。进一步的,步骤S31中,所述提取所有需执行的指令逐条执行包括:下载SVN服务器中待测环境SVN目录的内容、将从SVN服务器下载的内容拷贝至指定位置、各待测程序运行需要编辑的环境数据、启动待测程序;步骤S32中,所述提取所有需执行的指令逐条执行包括:下载SVN服务器中测试环境目录的内容、将从SVN服务器下载内容拷贝至指定位置、修改自动化测试脚本中的参数值、执行自动化测试。进一步的,步骤S34中需要改造RobotFramework自动化测试平台和python编写的dbbot扩展包,改造RobotFramework自动化测试平台时,在python环境中Robotframework扩展包的源码中加入调用dbbot扩展包的run函数的语句,当自动化测试完成时,使用dbbot扩展包自动解析存放自动化测试结果内容的文件output.xml;改造python编写的dbbot扩展包时,修改dbbot扩展包中数据库的连接、插入语句,拼接插入语句的方法,dbbot扩展包支持将测试结果数据存入不同类型的数据库内,支持将自定义业务字段的参数值存入数据库。进一步的,所述步骤S3还包括:S36、访问运维云平台的自动化测试模块,按照测试任务信息、用例集信息、用例信息逐级检查统计数据,点击其中执行失败的用例记录的分析原因按钮,在分析原因页面中排查用例执行失败原因,并回到用例信息页面,标记用例的错误原因。进一步的,所述运维云平台的自动化测试模块支持两种辅助方式分析用例错误原因:1)测试web页面上的功能错误时,远程显示用例失败时的错误截图,此截图位于测试环境虚拟机中;2)根据产品业务需求,测试url形式的接口请求功能错误时,允许选择接口请求结果记录文件,与预期结果文件进行远程文件对比,使用消息机制远程调用测试环境中的对比工具对比前面所说的两个文件,远程获取测试环境中的报告文件,将对比报告内容显示在页面上,报告中会记录文件差异的部分。另一方面,所述基于Openstack下云平台自动化测试实施系统包括:SVN服务器、运维云平台、OpenStack云平台、消息服务器、数据库、测试环境虚拟机和待测环境虚拟机,所述消息服务器中内置有发送消息队列和接收消息队列,所述测试环境虚拟机和待测环境虚拟机内置消息处理引擎,所述运维平台内置有自动化测试模块,所述OpenStack云平台与所述运维云平台、测试环境虚拟机、待测环境虚拟机连接,所述运维云平台与所述数据库、消息服务器连接,所述消息服务器与所述测试环境虚拟机和待测环境虚拟机连接,所述测试环境虚拟机与所述消息服务器、数据库连接,所述SVN服务器、运维云平台、OpenStack云平台、消息服务器、数据库、测试环境虚拟机和待测环境虚拟机按照上述基于Openstack下云平台自动化测试实本文档来自技高网...
一种基于Openstack下云平台自动化测试实施方法与系统

【技术保护点】
一种基于Openstack下云平台自动化测试实施方法,其特征在于,所述方法包括下述步骤:步骤S1、配置自动化测试方案;步骤S2、搭建自动化测试环境;步骤S3、执行并分析自动化测试方案。

【技术特征摘要】
1.一种基于Openstack下云平台自动化测试实施方法,其特征在于,所述方法包括下述步骤:步骤S1、配置自动化测试方案;步骤S2、搭建自动化测试环境;步骤S3、执行并分析自动化测试方案。2.如权利要求1所述基于Openstack下云平台自动化测试实施方法,其特征在于,所述步骤S1具体包括:S11、使用SVN客户端管理工具维护SVN服务器所创建的待测环境指定项目的SVN目录以及测试环境指定项目的SVN目录;S12、配置运维云平台中基础参数,包括配置虚拟机镜像模板记录、虚拟机资源配置记录以及项目版本,然后记录项目版本关联的待测环境模板和测试环境模板;S13、填写本次自动化测试的概况信息,选择测试的项目版本后,配置本次测试的待测环境和测试环境,创建自动化测试方案,包括普通自动化测试方案、定时自动化测试方案或多节点自动化测试方案。3.如权利要求2所述基于Openstack下云平台自动化测试实施方法,其特征在于,所述步骤S2具体包括:S21、运维云平台后台处理所述创建的自动化测试方案并解析;S22、运维云平台根据自动化测试方案的需求,调用OpenStack的外部接口,OpenStack云平台投递虚拟机,包括投递待测环境虚拟机和测试环境虚拟机;S23、运维云平台记录执行自动化测试方案时产生的业务数据,记录存放在运维云平台对应的数据库内;S24、运维云平台组织修改待测环境和测试环境虚拟机的指令,生成组织消息并发送至消息服务器中的发送消息队列,消息服务器读取所述发送消息队列,按照发送消息的虚拟机的mac地址,点播发送给指定虚拟机。4.如权利要求3所述基于Openstack下云平台自动化测试实施方法,其特征在于,所述步骤S3具体包括:S31、待测环境虚拟机中的消息处理引擎接收到消息后,解析其中的json格式的消息体内容,转化为xml格式内容,提取所有需执行的指令逐条执行;S32、测试环境虚拟机中的消息处理引擎接收到消息后,解析其中的json格式的消息体内容,转化为xml格式内容,提取所有需执行的指令逐条执行;S33、测试环境虚拟机中的消息处理引擎逐条执行消息体中的指令,当所有指令都执行成功,将执行状态消息记录为成功,否则记录为失败,将执行状态消息发送至消息服务器并保存在接收消息队列中;运维云平台接收从消息服务器反馈的执行状态消息,根据执行状态消息标记自动化测试方案是否执行完成;S34、测试环境虚拟机中的RobotFramework自动化测试平台完成自动化测试后,将测试结果数据存入数据库指定位置;S35、访问运维云平台的自动化测试模块,查看自动化测试方案对应的测试报告,查看报告中的测试执行概况数据。5.如权利要求2所述基于Openstack下云平台自动化测试实施方法,其特征在于,上述步骤S13中,在配置本次测试的待测环境时,在待测环境配置区内,选择SVN目录中对应本次测试范围的目录,选择虚拟机资源配置项,默认选择测试的项目版本中配置的待测环境虚拟机镜像模板;在配置本次测试的测试环境时,在测试环境配置区内,选择SVN目录中对应本次测试范围的目录,选择虚拟机资源配置项,默认选择测试的项目版本中配置的测试环境虚拟机镜像模板,创建普通自动化测试方案,如果填写了定时规则,则创建定时自动化测试方案,如果添加了测试环境节点,还需要继续选择附...

【专利技术属性】
技术研发人员:王德超邓世豪廖磊郭朝霞杨曦官磊
申请(专利权)人:武大吉奥信息技术有限公司
类型:发明
国别省市:湖北,42

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1