CN109614321A - 用于ats软件的持续集成和交付的系统 - Google Patents

用于ats软件的持续集成和交付的系统 Download PDF

Info

Publication number
CN109614321A
CN109614321A CN201811411032.5A CN201811411032A CN109614321A CN 109614321 A CN109614321 A CN 109614321A CN 201811411032 A CN201811411032 A CN 201811411032A CN 109614321 A CN109614321 A CN 109614321A
Authority
CN
China
Prior art keywords
test
ats
server
continuous integrating
software
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201811411032.5A
Other languages
English (en)
Inventor
欧阳敏
熊坤鹏
兰青辉
冯斌
夏芸
刘锦峰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Casco Signal Ltd
Original Assignee
Casco Signal Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Casco Signal Ltd filed Critical Casco Signal Ltd
Priority to CN201811411032.5A priority Critical patent/CN109614321A/zh
Publication of CN109614321A publication Critical patent/CN109614321A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3664Environments for testing or debugging software
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3684Test management for test design, e.g. generating new test cases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3692Test management for test results analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Software Systems (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明涉及一种用于ATS软件的持续集成和交付的系统,该系统包括测试服务器和持续集成服务器,所述的测试服务器和持续集成服务器通过网络连接,所述的测试服务器和持续集成服务器内的虚拟机基于虚拟网络交换机连接。与现有技术相比,本发明具有以下优点:实现ATS软件、各种仿真设备,以及测试平台和整个测试环境的自动部署和自动化测试,可大幅提升ATS软件的测试效率。

Description

用于ATS软件的持续集成和交付的系统
技术领域
本发明涉及ATS系统仿真测试领域,尤其是涉及一种用于ATS软件的持续集成和交付的系统。
背景技术
列车自动监控系统ATS(Automatic Train Supervision)系统是基于现代数据通信和计算机网络的分布式实时计算机控制系统。目前对于ATS系统的仿真测试存在以下难点:
1)测试环境部署,基于现场实际设备和运营数据,自动部署整个仿真测试环境,包括:ATS被测系统和软件,联锁CI仿真,线路控制器LC仿真、区域控制器ZC仿真、车载控制器CC仿真、轨道线路和信号设备仿真、测试平台和测试数据,以及整个网络环境的配置;
2)自动化测试,自动化测试的一般思路为,在测试用例中描述测试数据和输入条件,各种仿真设备的操作,获取被测对象的输出后与预期结果进行对比,获得测试结果。由于ATS测试中涉及到众多的仿真设备和复杂的操作序列,大量需分析的ATS输出日志,故其自动化测试存在一定的难度;
3)由于上述2点原因,导致了ATS软件的开发周期较长,如何实现ATS软件的快速可靠的交付也成为难点之一。
发明内容
本发明的目的就是为了克服上述现有技术存在的缺陷而提供一种用于ATS软件的持续集成和交付的系统。
本发明的目的可以通过以下技术方案来实现:
一种用于ATS软件的持续集成和交付的系统,该系统包括测试服务器和持续集成服务器,所述的测试服务器和持续集成服务器通过网络连接,所述的测试服务器与持续集成服务器内的虚拟机基于虚拟网络交换机连接,用于实现ATS软件、各种仿真设备,以及测试平台和整个测试环境的自动部署和自动化测试。
优选地,所述的持续集成服务器部署5个虚拟机,包括:jenkins服务器、持续部署服务器、Gitlab配置库服务器、ATS构件服务器、测试平台构件服务器和测试管理服务器;
所述的jenkins服务器用于创建整个持续集成和持续部署的流水线;
所述的持续部署服务器用于测试环境的部署;
所述的Gitlab配置库服务器,用于存放ATS代码、构件规则、测试平台代码、测试脚本、测试环境配置和流水线配置;
所述的ATS构件服务器,用于ATS软件的构件,由ATS代码生成可执行文件;
所述的测试平台构件服务器,用于测试平台和测试脚本的构件,由测试平台代码生成可执行文件;
所述的测试管理服务器用于制定测试策略,测试日志的存储和测试结果分析以及生成测试报告。
优选地,所述的持续部署服务器用于测试环境的部署,具体包括:根据总的测试环境配置文件,创建一个或多个虚拟机并配置IP地址,并创建一个或多个虚拟交换机并配置网络参数,安装ATS软件、安装测试平台、安装仿真设备软件。
优选地,所述的测试服务器部署一个测试平台虚拟机,根据测试环境需求部署一个或多个ATS虚拟机,部署一个或多个仿真设备虚拟机,部署一个或多个虚拟网络交换机。
优选地,所述的测试平台虚拟机用于仿真ATS自动化测试所需的外部设备以驱动ATS进行相关场景的测试。
优选地,所述的测试平台虚拟机的具体功能包括:
(1)、模拟ATS运行所需的各个外部模拟器,其中模拟器包括ZC和CI模拟设备,并根据测试人员设计的测试脚本模拟出相应的场景运行,模拟图形工作站GPC实现ATS的界面操作的脚本化;
(2)、全程记录ATS界面上的所有控件的状态以及ATS与外部设备的所有接口消息内容;
(3)、根据测试人员编写出分析脚本,分析记录数据,实现结果的自动判定,并生成响应的测试报告。
优选地,所述的jenkins服务器创建的流水线包括以下步骤:
步骤1、根据版本规则获取ATS软件代码;
步骤2、ATS软件代码构件;
步骤3、测试脚本构件;
步骤4、测试环境部署和网络配置;
步骤5、执行测试用例;
步骤6、生成测试报告并邮件提醒;
所述的步骤2~6执行的条件为:当前一步骤执行成功后,本步骤才执行。
与现有技术相比,本发明具有以下优点:
1、Jenkins流水线,可将整个ATS软件的开发和测试过程自动化,包括构件,测试环境部署,测试执行,测试结果分析,因此缩短了开发周期;
2、通过制定测试策略,即制定了本次ATS的软件发布标准,若本次测试策略中涉及到的测试用例都通过,则配置库上的ATS软件可以发布到现场,因此保障了软件质量;
3、Jenkins服务器为jenkins master节点,持续部署服务器、测试管理服务器、ATS构件服务器、测试平台构件服务器,测试平台虚拟机均为jenkins slave节点
4、持续部署服务器采用ansible实现对测试环境的部署
5、实现了测试案例全自动化测试,测试人员仅需编写场景仿真脚本和测试结果自动分析脚本,后续工作完全交由测试平台自动化实现。
附图说明
图1为本发明的系统整体框图;
图2为本发明jenkins服务器创建的流水线的流程图;
图3为本发明应用于上海1号线ATS软件发布的操作流程图。
具体实施方式
下面将对本发明实施例中的技术方案进行清楚,完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都应属于本发明保护的范围。
如图1所示,一种用于ATS软件的持续集成和交付的系统,该系统包括测试服务器和持续集成服务器,所述的测试服务器和持续集成服务器通过网络连接,所述的测试服务器和持续集成服务器内的虚拟机基于虚拟网络交换机连接。
所述的持续集成服务器部署5个虚拟机,包括:jenkins服务器、持续部署服务器、Gitlab配置库服务器、ATS构件服务器、测试平台构件服务器和测试管理服务器,所述的jenkins服务器用于创建整个持续集成和持续部署的流水线;所述的持续部署服务器用于测试环境的部署,包括:根据总的测试环境配置文件,创建一个或多个虚拟机并配置IP地址,创建一个或多个虚拟交换机并配置网络参数,安装ATS软件、安装测试平台、安装仿真设备软件;所述的Gitlab配置库服务器,用于存放ATS代码、构件规则、测试平台代码、测试脚本、测试环境配置和流水线配置;所述的ATS构件服务器,用于ATS软件的构件,由ATS代码生成可执行文件;所述的测试平台构件服务器,用于测试平台和测试脚本的构件,由测试平台代码生成可执行文件;所述的测试管理服务器用于制定测试策略,测试日志的存储和测试结果分析以及生成测试报告。
所述的测试服务器部署一个测试平台虚拟机,根据测试环境需求部署一个或多个ATS虚拟机,部署一个或多个仿真设备虚拟机,部署一个或多个虚拟网络交换机;
所述的测试平台虚拟机用于仿真ATS自动化测试所需的外部设备以驱动ATS进行相关场景的测试,所述的测试平台虚拟机的具体功能包括:
(1)、模拟ATS运行所需的各个外部模拟器(如ZC,CI等模拟设备),并根据测试人员设计的测试脚本模拟出相应的场景运行,模拟图形工作站(GPC)实现ATS的界面操作的脚本化;
(2)、全程记录ATS界面上的所有控件的状态以及ATS与外部设备的所有接口消息内容;
(3)、根据测试人员编写出分析脚本,分析记录数据,实现结果的自动判定,并生成响应的测试报告。
如图2所示,所述的jenkins服务器创建的流水线包括以下步骤:
步骤1、根据版本规则获取ATS软件代码;
步骤2、ATS软件代码构件;
步骤3、测试脚本构件;
步骤4、测试环境部署和网络配置;
步骤5、执行测试用例;
步骤6、生成测试报告并邮件提醒;
所述的步骤2~6执行的条件为:当前一步骤执行成功后,本步骤才执行。
如图3所示,本发明应用于上海1号线ATS软件发布的操作流程包括以下步骤:
步骤S1、在gitlab服务器上,创建如下配置仓库并将代码和配置文件入库;
步骤S2、在测试服务器上,导入虚拟机模板,该模板的操作系统为win7x64,并配置好java 1.8的运行环境、Logstash日志收集工具;
步骤S3、在测试管理服务器上,完成测试策略制定,包括测试环境配置,需执行的测试用例,本来发布可通过的条件,例如某些测试用例必须通过;
步骤S4、开发人员在ATS软件的配置仓库上打代码标签,当代码标签创建成功后,Gitlab通过了REST API启动持续集成流水线;
步骤S5、持续集成流水线在ATS构件节点上执行ATS软件构件操作,该节点完成从gitlab配置库获取ATS各个软件代码,并根据构件规则,生成ATS各个软件的可执行文件;
步骤S6、持续集成流水线在测试平台构件节点上执行测试平台构件操作,该节点完成从gitlab配置库获取测试平台代码、仿真软件代码,以及测试脚本,并根据构件规则,生成可执行的测试脚本,测试平台,以及仿真设备;
步骤S7、持续集成流水线在测试部署节点上执行测试环境部署操作;
步骤S8、持续集成流水线在测试平台节点上,根据测试策略,依次完成所有测试脚本的执行;测试服务器节点,进行测试日志分析,得出测试报告,并发出通知邮件。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

Claims (7)

1.一种用于ATS软件的持续集成和交付的系统,其特征在于,该系统包括测试服务器和持续集成服务器,所述的测试服务器和持续集成服务器通过网络连接,所述的测试服务器与持续集成服务器内的虚拟机基于虚拟网络交换机连接,用于实现ATS软件、各种仿真设备,以及测试平台和整个测试环境的自动部署和自动化测试。
2.根据权利要求1所述的一种用于ATS软件的持续集成和交付的系统,其特征在于,所述的持续集成服务器部署5个虚拟机,包括:jenkins服务器、持续部署服务器、Gitlab配置库服务器、ATS构件服务器、测试平台构件服务器和测试管理服务器;
所述的jenkins服务器用于创建整个持续集成和持续部署的流水线;
所述的持续部署服务器用于测试环境的部署;
所述的Gitlab配置库服务器,用于存放ATS代码、构件规则、测试平台代码、测试脚本、测试环境配置和流水线配置;
所述的ATS构件服务器,用于ATS软件的构件,由ATS代码生成可执行文件;
所述的测试平台构件服务器,用于测试平台和测试脚本的构件,由测试平台代码生成可执行文件;
所述的测试管理服务器用于制定测试策略,测试日志的存储和测试结果分析以及生成测试报告。
3.根据权利要求2所述的一种用于ATS软件的持续集成和交付的系统,其特征在于,所述的持续部署服务器用于测试环境的部署,具体包括:根据总的测试环境配置文件,创建一个或多个虚拟机并配置IP地址,并创建一个或多个虚拟交换机并配置网络参数,安装ATS软件、安装测试平台、安装仿真设备软件。
4.根据权利要求1所述的一种用于ATS软件的持续集成和交付的系统,其特征在于,所述的测试服务器部署一个测试平台虚拟机,根据测试环境需求部署一个或多个ATS虚拟机,部署一个或多个仿真设备虚拟机,部署一个或多个虚拟网络交换机。
5.根据权利要求4所述的一种用于ATS软件的持续集成和交付的系统,其特征在于,所述的测试平台虚拟机用于仿真ATS自动化测试所需的外部设备以驱动ATS进行相关场景的测试。
6.根据权利要求5所述的一种用于ATS软件的持续集成和交付的系统,其特征在于,所述的测试平台虚拟机的具体功能包括:
(1)、模拟ATS运行所需的各个外部模拟器,其中模拟器包括ZC和CI模拟设备,并根据测试人员设计的测试脚本模拟出相应的场景运行,模拟图形工作站GPC实现ATS的界面操作的脚本化;
(2)、全程记录ATS界面上的所有控件的状态以及ATS与外部设备的所有接口消息内容;
(3)、根据测试人员编写出分析脚本,分析记录数据,实现结果的自动判定,并生成响应的测试报告。
7.根据权利要求2所述的一种用于ATS软件的持续集成和交付的系统,其特征在于,所述的jenkins服务器创建的流水线包括以下步骤:
步骤1、根据版本规则获取ATS软件代码;
步骤2、ATS软件代码构件;
步骤3、测试脚本构件;
步骤4、测试环境部署和网络配置;
步骤5、执行测试用例;
步骤6、生成测试报告并邮件提醒;
所述的步骤2~6执行的条件为:当前一步骤执行成功后,本步骤才执行。
CN201811411032.5A 2018-11-24 2018-11-24 用于ats软件的持续集成和交付的系统 Pending CN109614321A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811411032.5A CN109614321A (zh) 2018-11-24 2018-11-24 用于ats软件的持续集成和交付的系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811411032.5A CN109614321A (zh) 2018-11-24 2018-11-24 用于ats软件的持续集成和交付的系统

Publications (1)

Publication Number Publication Date
CN109614321A true CN109614321A (zh) 2019-04-12

Family

ID=66004635

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811411032.5A Pending CN109614321A (zh) 2018-11-24 2018-11-24 用于ats软件的持续集成和交付的系统

Country Status (1)

Country Link
CN (1) CN109614321A (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110456777A (zh) * 2019-08-20 2019-11-15 广州小鹏汽车科技有限公司 车辆控制器的测试方法与系统
CN111026089A (zh) * 2019-12-25 2020-04-17 卡斯柯信号(北京)有限公司 一种列控中心测试环境自动部署方法及装置
CN111475198A (zh) * 2020-04-14 2020-07-31 中国人民解放军战略支援部队信息工程大学 一种网络服务器的拟态化方法及装置
CN112506525A (zh) * 2020-12-03 2021-03-16 中国人寿保险股份有限公司 持续集成和持续交付方法、装置、电子设备及存储介质
CN112765007A (zh) * 2019-10-21 2021-05-07 腾讯科技(深圳)有限公司 一种集成测试方法、装置及存储介质
CN113676368A (zh) * 2021-07-12 2021-11-19 交控科技股份有限公司 一种运用于ats网络性能测试的方法及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101162456A (zh) * 2007-07-03 2008-04-16 王辉 一种ats自动化测试系统
WO2016177124A1 (zh) * 2015-07-29 2016-11-10 中兴通讯股份有限公司 一种实现持续集成测试的方法及装置
CN107562488A (zh) * 2017-08-22 2018-01-09 交控科技股份有限公司 基于仿真测试平台的自动化部署装置及部署方法
CN107621944A (zh) * 2017-09-22 2018-01-23 天翼电子商务有限公司 基于自动化运维的持续集成流水线系统及其方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101162456A (zh) * 2007-07-03 2008-04-16 王辉 一种ats自动化测试系统
WO2016177124A1 (zh) * 2015-07-29 2016-11-10 中兴通讯股份有限公司 一种实现持续集成测试的方法及装置
CN107562488A (zh) * 2017-08-22 2018-01-09 交控科技股份有限公司 基于仿真测试平台的自动化部署装置及部署方法
CN107621944A (zh) * 2017-09-22 2018-01-23 天翼电子商务有限公司 基于自动化运维的持续集成流水线系统及其方法

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110456777A (zh) * 2019-08-20 2019-11-15 广州小鹏汽车科技有限公司 车辆控制器的测试方法与系统
CN110456777B (zh) * 2019-08-20 2022-03-18 广州小鹏汽车科技有限公司 车辆控制器的测试方法与系统
CN112765007A (zh) * 2019-10-21 2021-05-07 腾讯科技(深圳)有限公司 一种集成测试方法、装置及存储介质
CN111026089A (zh) * 2019-12-25 2020-04-17 卡斯柯信号(北京)有限公司 一种列控中心测试环境自动部署方法及装置
CN111026089B (zh) * 2019-12-25 2021-06-15 卡斯柯信号(北京)有限公司 一种列控中心测试环境自动部署方法及装置
CN111475198A (zh) * 2020-04-14 2020-07-31 中国人民解放军战略支援部队信息工程大学 一种网络服务器的拟态化方法及装置
CN111475198B (zh) * 2020-04-14 2023-01-24 中国人民解放军战略支援部队信息工程大学 一种网络服务器的拟态化方法及装置
CN112506525A (zh) * 2020-12-03 2021-03-16 中国人寿保险股份有限公司 持续集成和持续交付方法、装置、电子设备及存储介质
CN113676368A (zh) * 2021-07-12 2021-11-19 交控科技股份有限公司 一种运用于ats网络性能测试的方法及装置
CN113676368B (zh) * 2021-07-12 2022-07-19 交控科技股份有限公司 一种运用于ats网络性能测试的方法及装置

Similar Documents

Publication Publication Date Title
CN109614321A (zh) 用于ats软件的持续集成和交付的系统
KR101132560B1 (ko) 로봇 소프트웨어 컴포넌트를 위한 시뮬레이션 기반 인터페이스 테스팅 자동화 시스템 및 그 방법
CN103235756B (zh) 一种面向嵌入式系统分区应用程序软件的仿真测试方法
CN102141962B (zh) 一种安全性分布式测试框架系统及其测试方法
CN107562969B (zh) 航空发动机控制系统软件的集成方法和装置
CN109491910B (zh) 一种保护逻辑和控制逻辑的可视化仿真调试方法及系统
CN102567172B (zh) 用于应用性能测试的并行工作负荷仿真方法和系统
CN104407971A (zh) 自动化测试嵌入式软件的方法
KR20080065936A (ko) 동적 피드백 제어 시스템 시뮬레이팅 방법, 시뮬레이션동적 피드백 제어 시스템 준비 방법 및 동적 피드백 제어시스템 시뮬레이팅 시스템
US20090248390A1 (en) Trace debugging in a hardware emulation environment
CN105117346A (zh) 虚拟化平台的分布式系统自动化测试方法及系统
CN104881358B (zh) 一种程序仿真测试方法及系统
CN105933173A (zh) 一种电力系统智能装置自动化测试系统
CN111859834B (zh) 一种基于uvm的验证平台开发方法、系统、终端及存储介质
CN103544100A (zh) 便携数据处理设备应用程序的测试方法、系统和客户端
CN112631846A (zh) 一种故障演练方法、装置、计算机设备及存储介质
CN104699617A (zh) 一种游戏用自动化测试方法
Sanz et al. High-accuracy distributed simulation environment for PRIME networks analysis and improvement
CN106021049A (zh) 国产操作系统验证平台及建立方法
CN111460640B (zh) 电力系统仿真方法、装置、设备及计算机存储介质
CN106528429A (zh) 一种ui界面测试方法及装置
CN107122307B (zh) 一种物联网执行系统
Weiss et al. Philip on the hil: Automated multi-platform os testing with external reference devices
Ericsson et al. Challenges from research to deployment of industrial distributed control systems
CN111382065B (zh) 基于测试模板的验证流程管理系统及其方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40004235

Country of ref document: HK

RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20190412