CN102141961A - 一种列车车载软件的测试方法和测试系统 - Google Patents
一种列车车载软件的测试方法和测试系统 Download PDFInfo
- Publication number
- CN102141961A CN102141961A CN2011100742370A CN201110074237A CN102141961A CN 102141961 A CN102141961 A CN 102141961A CN 2011100742370 A CN2011100742370 A CN 2011100742370A CN 201110074237 A CN201110074237 A CN 201110074237A CN 102141961 A CN102141961 A CN 102141961A
- Authority
- CN
- China
- Prior art keywords
- software
- simulator
- test
- train
- testing
- 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
Links
Images
Landscapes
- Debugging And Monitoring (AREA)
Abstract
本发明涉及一种列车车载软件的测试方法,其特征在于,包括:对车载软件底层硬件驱动与上层逻辑操作进行剥离,创建基于目标操作系统的底层硬件驱动;将上层逻辑操作移植到目标操作系统平台,与基于操作系统的驱动一起构建待测软件;调取、运行测试用例,上层逻辑操作通过底层驱动从外围设备模拟器和/或真实外围设备获取关联设备运行数据,通过列车模拟操纵台获取相应的列车状态模拟数据,并生成执行结果;依据执行结果判断待测软件的质量特性。本发明还公开一种列车车载软件的测试系统。本发明测试过程效率高,测试过程标准,测试结果准确。
Description
技术领域
本发明涉及软件测试领域,特别是涉及一种列车车载安全控制软件的测试方法和测试系统。
背景技术
软件测试是保证软件质量的一个十分重要环节,因此需要引入各种测试工具来提高软件测试的效率。对基于PC机软件的测试,已有较多的理论、方法和工具,渐趋成熟,而基于嵌入式平台的软件测试领域,由于必须面向特定的硬件平台,行之有效的理论与方法很少或者代价很高。作为负责列车行车安全的列控系统,列车车载安全控制软件的微小瑕疵就可能威胁到列车运行安全,带来巨额人员与财产损失。因此,对列车车载安全控制软件的测试非常重要。而且从单一软件角度来看,软件的底层驱动逻辑简单,修改次数很少,问题也较少;最重要的上层逻辑由于需要反复修改以适应用户需求,隐藏问题的可能性则非常大。
参见图1,示出列车车载软件的架构,车载软件大致可分为控制逻辑11、底层接口12、控制参数13、线路基础数据14等四部分构成。其中线路基础数据14是铁路局根据其配属机车的运行区间进行编辑、编译后得出,它包含列车走行线路的基本信息,如信号机的编号/类型、信号机之间的距离、线路的限速、坡道、道岔的限速与位置等各种特征;控制参数13则是一个软件开关的汇总,由各个铁路局根据配属机车的实际情况等内容进行选择,如和谐号列车与普通列车的车种选择等等;底层接口12负责各种数据的获取、传送;控制逻辑11负责数据的运算、处理。
由于全国铁路各种信号制式,各路局的规章、规定、习惯,各种线路的条件、各型内燃、电力机车等等特性等均存在较大差异,作为一个标准的列控系统,其功能必须适应这些情况的变化。因此车载软件的特点是控制逻辑十分复杂,测试用例也非常多,并且不断的积累,完成一次测试的时间成几何级数的增长。如果车载软件经过重大改动,往往需要动员十几个人进行反复测试,依赖“人海战术”的测试方法严重影响测试效率。
在测试时,因主要依靠人工测试,而人的短期记忆有限,且存在个体差异,导致给出模拟数据的时机、前后顺序有所不同,使测试结果不同,使用同一个测试用例,即使发现问题,要完全重复上一次测试过程也难以实现,影响测试效果。
发明内容
本发明所要解决的技术问题是提供一种列车车载软件测试方法,该方法可提高生产率,减轻劳动强度,同时减少错误的发生。
本发明一种列车车载软件的测试方法,包括:对车载软件底层硬件驱动与上层逻辑操作进行剥离,创建基于目标操作系统的底层硬件驱动;将上层逻辑操作移植到目标操作系统平台,与基于操作系统的驱动一起构建待测软件;调取、运行测试用例,上层逻辑操作通过底层驱动从外围设备模拟器和/或真实外围设备获取关联设备运行数据,通过列车模拟操纵台获取相应的列车状态模拟数据,并生成执行结果;依据执行结果判断待测软件的质量特性。
优选的,调取、运行测试用例之前,还包括设定测试环境。
优选的,所述方法还包括判断是否还有测试用例,如有,继续调取并运行。
本发明一种列车车载软件的测试系统,包括控制机、主机模拟器、外围设备模拟器和/或真实外围设备、软件编译器,控制机内置测试进度控制模块、结果分析模块和测试用例库,主机模拟器内置待测软件模块;
待测软件模块,用于对车载软件底层硬件驱动与上层逻辑操作进行剥离,创建基于目标操作系统的底层硬件驱动;将上层逻辑操作移植到目标操作系统平台,与基于操作系统的驱动一起构建待测软件;
测试进度控制模块,用于调取、运行测试用例,上层逻辑操作通过底层驱动从外围设备模拟器和/或真实外围设备获取关联设备运行数据,通过列车模拟操纵台获取相应的列车状态模拟数据,并生成执行结果;
结果分析模块,用于依据执行结果判断待测软件的质量特性。
优选的,所述控制机还包括测试环境库,用于为测试进度控制模块提供测试环境相关参数,测试进度控制模块设定测试环境。
优选的,主机模拟器包括第一模拟器和第二模拟器,第一模拟器和第二模拟器分别内置待测软件模块。
优选的,所述系统还包括屏幕显示器模拟机或者真实的屏幕显示器,用于显示测试过程和结果。
与现有技术相比,本发明具有以下优点:
本发明将车载软件的测试从嵌入式系统移植到操作系统,使之脱离特定目标硬件,借助于基于该操作系统编写的测试管理程序进行自动测试,可自动完成测试环境的设定,测试用例的调取,运行,及测试报告的生成,相对于现有技术中人工测试,该测试过程效率高,测试过程标准,测试结果准确。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对现有技术和实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为列车车载软件的架构示意图;
图2为本发明列车车载软件测试方法;
图3为本发明车载软件简化结构图;
图4为本发明列车车载软件测试系统示意图;
图5为本发明一测试用例示意图;
图6为本发明测试过程采样点第一示意图;
图7为本发明测试过程采样点第二示意图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
本发明将车载软件移植到基于通用计算机的其他操作系统平台,凭借计算机的高效数据处理能力,将这些繁琐的、人工的测试行为改为由计算机系统自动进行,以便提高劳动生产率,减轻劳动强度,同时减少错误的发生。
参见图2,示出本发明列车车载软件测试方法,具体步骤如下。
步骤S201、对车载软件底层硬件驱动与上层逻辑操作进行剥离,创建基于操作系统的底层硬件驱动,将上层逻辑操作移植到操作系统平台,与新编写的底层硬件驱动一起编译后作为待测软件。
受嵌入式平台的限制,且车载软件未使用操作系统,恢复现场环境与车载控制软件自身,成为实现自动测试的最大难题。车载软件采用标准C++作为编程语言,基于C语言的可移植性,在操作系统平台下测试正确的上层逻辑操作,在目标硬件上也是正确的。将车载软件运行在操作系统上,就能够实现在操作系统上构建虚拟主机,使自动测试成为可能。
在操作系统平台下,操作系统具有对内存操作的保护机制,使得程序不能对内存地址进行直接读写。因此,基于操作系统,改编或者重新设计底层硬件驱动,该底层硬件驱动与上述上层逻辑操作相关联,且与操作系统相适应。
在实现软件分层之后,将上层逻辑操作移植到操作系统平台,拷贝进测试目录,使用基于操作系统的编译器进行编译、链接,生成测试用模块。该操作系统可以为WINDOWS操作系统。
步骤S202、设定测试环境。在每次测试开始前,需要对测试环境进行恢复,测试环境包括:地面线路基础数据、控制参数、时间信息、运行揭示、辆数、计长、外围的辅助信息等。
步骤S203、调取测试用例,运行测试用例,待测试的上层逻辑操作层通过底层硬件驱动从外围设备模拟器、列车运行状态模拟器获取相应的列车状态数据和外围设备运行信息,并生成执行结果。
本发明可以将人工测试的操作过程、输入的数据、被测软件的反馈等相关因素存储为测试用例;还可以根据“用户需求”设计测试用例及从真实设备日常运行记录中生成测试用例。
列车状态数据包括速度、机车信号、机车工况、各种压力等等。执行结果可为控制指令、响应等,如制动指令、实时计算的模式限速曲线等等。
步骤S204、判断是否还有测试用例,如有返回步骤S203;如无,依据执行结果生成测试报告。测试报告中,根据执行结果都是否在设定范围之内,判断被测试的上层逻辑是否正常,进而判断整个软件是否工作正常。
通过上述步骤,本发明将车载软件的测试从面向特定硬件的系统(嵌入式系统)移植到其他操作系统,借助于基于该操作系统编写的的测试管理程序,自动完成测试环境的设定,测试用例的调取,运行,及测试报告的生成,相对于现有技术中人工测试,该测试过程效率高,测试过程标准,测试结果准确。
基于上述列车车载软件测试方法,本发明还提供一种列车车载软件测试系统。参见图4,示出本发明列车车载软件测试系统,包括控制机21、主机模拟器22、屏幕显示器模拟机(真实的屏幕显示器)23、外围设备模拟器(真实外围设备)24。
控制机21可为标准的PC机,控制机21内置测试进度控制模块211、结果分析模块212、测试环境库213和测试用例库214。主机模拟器22包括A模拟器和B模拟器,A模拟器和B模拟器内置待测软件221。屏幕显示器模拟机(真实的屏幕显示器)23用于显示测试过程和结果。
测试进度控制模块211用于从测试环境库213调取测试环境相关参数,设定测试环境;测试用例库214调取测试用例,并运行测试用例,使车载软件221中的底层硬件驱动从外围设备模拟器、列车运行模拟程序获取相应的列车状态数据、外围设备运行数据,发送到上层逻辑操作,上层逻辑根据这些数据计算出执行结果.
结果分析模块212判断是否还有测试用例,如有启动测试进度控制模块211;如无,依据执行结果生成测试报告。测试报告中,如每次执行结果都在设定范围之内,判断上层逻辑是否正常,否则,判断上层逻辑不正常。
参见图5,显示出本发明一测试用例,该测试用例中,横坐标为时间轴,测试管理程序通过依次改变速度、管压力、控制信号测试上层逻辑软件的响应。
本发明还可适当调整测试用例,通过调整采样点的粒度,来提高测试精度,和方便观察测试过程。参见图6和图7,在速度变化曲线中设置多个采样点,针对每个采样点进行判断,就可以了解软件是否工作正常,若提高采样点的密度,就可以提高检测的精度。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,也可以上述具体实施方式的进行组合,这些改进、润饰及组合形成的技术方案也应视为本发明的保护范围。
Claims (7)
1.一种列车车载软件的测试方法,其特征在于,包括:
对车载软件底层硬件驱动与上层逻辑操作进行剥离,创建基于目标操作系统的底层硬件驱动;
将上层逻辑操作移植到目标操作系统平台,与基于操作系统的驱动一起构建待测软件;
调取、运行测试用例,上层逻辑操作通过底层驱动从外围设备模拟器和/或真实外围设备获取关联设备运行数据,通过列车模拟操纵台获取相应的列车状态模拟数据,并生成执行结果;
依据执行结果判断待测软件的质量特性。
2.如权利要求1所述的方法,其特征在于,调取、运行测试用例之前,还包括设定测试环境。
3.如权利要求1所述的方法,其特征在于,所述方法还包括判断是否还有测试用例,如有,继续调取并运行。
4.一种列车车载软件的测试系统,其特征在于,包括控制机、主机模拟器、外围设备模拟器和/或真实外围设备、软件编译器,控制机内置测试进度控制模块、结果分析模块和测试用例库,主机模拟器内置待测软件模块;
待测软件模块,用于对车载软件底层硬件驱动与上层逻辑操作进行剥离,创建基于目标操作系统的底层硬件驱动;将上层逻辑操作移植到目标操作系统平台,与基于操作系统的驱动一起构建待测软件;
测试进度控制模块,用于调取、运行测试用例,上层逻辑操作通过底层驱动从外围设备模拟器和/或真实外围设备获取关联设备运行数据,通过列车模拟操纵台获取相应的列车状态模拟数据,并生成执行结果;
结果分析模块,用于依据执行结果判断待测软件的质量特性。
5.如权利要求4所述的系统,其特征在于,所述控制机还包括测试环境库,用于为测试进度控制模块提供测试环境相关参数,测试进度控制模块设定测试环境。
6.如权利要求4所述的系统,其特征在于,主机模拟器包括第一模拟器和第二模拟器,第一模拟器和第二模拟器分别内置待测软件模块。
7.如权利要求4所述的系统,其特征在于,所述系统还包括屏幕显示器模拟机或者真实的屏幕显示器,用于显示测试过程和结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2011100742370A CN102141961A (zh) | 2011-03-25 | 2011-03-25 | 一种列车车载软件的测试方法和测试系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2011100742370A CN102141961A (zh) | 2011-03-25 | 2011-03-25 | 一种列车车载软件的测试方法和测试系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102141961A true CN102141961A (zh) | 2011-08-03 |
Family
ID=44409495
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2011100742370A Pending CN102141961A (zh) | 2011-03-25 | 2011-03-25 | 一种列车车载软件的测试方法和测试系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102141961A (zh) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102521091A (zh) * | 2011-12-05 | 2012-06-27 | 株洲南车时代电气股份有限公司 | 一种列控安全计算机测试装置 |
CN104461854A (zh) * | 2013-09-12 | 2015-03-25 | 中国船舶工业综合技术经济研究院 | 一种舰船装备软件通用仿真测试平台及其构建方法 |
CN104866398A (zh) * | 2015-06-17 | 2015-08-26 | 株洲南车时代电气股份有限公司 | 一种基于lkj分时运行多种车载应用软件的方法和系统 |
CN104918280A (zh) * | 2015-04-27 | 2015-09-16 | 南车株洲电力机车研究所有限公司 | 车载无线设备、列车设备无线测试系统和方法 |
CN106354642A (zh) * | 2016-08-29 | 2017-01-25 | 中国航空工业集团公司西安飞机设计研究所 | 一种机载中央维护系统软件测试方法及系统 |
CN106649072A (zh) * | 2015-10-28 | 2017-05-10 | 惠州市德赛西威汽车电子股份有限公司 | 对车载终端上的软件的测试验收方法及系统、智能终端、及服务器 |
CN108595317A (zh) * | 2017-12-28 | 2018-09-28 | 合肥工大高科信息科技股份有限公司 | 一种轨道交通安全计算机嵌入式自动化测试方法 |
CN108829608A (zh) * | 2018-07-09 | 2018-11-16 | 北京首汽智行科技有限公司 | 一种基于汽车模拟器的智能车载终端设备的自动化测试系统及方法 |
WO2019085466A1 (zh) * | 2017-11-02 | 2019-05-09 | 平安科技(深圳)有限公司 | 关联测试方法、系统、应用服务器及计算机可读存储介质 |
CN113535487A (zh) * | 2020-04-16 | 2021-10-22 | 杭州中天微系统有限公司 | 测试系统及方法 |
CN114006922A (zh) * | 2021-10-19 | 2022-02-01 | 中车青岛四方机车车辆股份有限公司 | 一种列车通信网络安全检测系统及检测方法 |
CN115328104A (zh) * | 2022-10-13 | 2022-11-11 | 湖南中车时代通信信号有限公司 | 一种列车运行监控系统自动化测试装置及测试方法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101025619A (zh) * | 2007-03-30 | 2007-08-29 | 株洲南车时代电气股份有限公司 | 一种便携式监控装置软件测试方法及调试仪 |
-
2011
- 2011-03-25 CN CN2011100742370A patent/CN102141961A/zh active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101025619A (zh) * | 2007-03-30 | 2007-08-29 | 株洲南车时代电气股份有限公司 | 一种便携式监控装置软件测试方法及调试仪 |
Non-Patent Citations (1)
Title |
---|
朱琴跃等: "列车通信网性能测试的研究与实现", 《测控技术》 * |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102521091A (zh) * | 2011-12-05 | 2012-06-27 | 株洲南车时代电气股份有限公司 | 一种列控安全计算机测试装置 |
CN104461854A (zh) * | 2013-09-12 | 2015-03-25 | 中国船舶工业综合技术经济研究院 | 一种舰船装备软件通用仿真测试平台及其构建方法 |
CN104461854B (zh) * | 2013-09-12 | 2018-11-13 | 中国船舶工业综合技术经济研究院 | 一种舰船装备软件通用仿真测试平台 |
CN104918280A (zh) * | 2015-04-27 | 2015-09-16 | 南车株洲电力机车研究所有限公司 | 车载无线设备、列车设备无线测试系统和方法 |
CN104918280B (zh) * | 2015-04-27 | 2018-09-14 | 南车株洲电力机车研究所有限公司 | 车载无线设备、列车设备无线测试系统和方法 |
CN104866398A (zh) * | 2015-06-17 | 2015-08-26 | 株洲南车时代电气股份有限公司 | 一种基于lkj分时运行多种车载应用软件的方法和系统 |
CN104866398B (zh) * | 2015-06-17 | 2018-08-07 | 株洲南车时代电气股份有限公司 | 一种基于lkj分时运行多种车载应用软件的方法和系统 |
CN106649072A (zh) * | 2015-10-28 | 2017-05-10 | 惠州市德赛西威汽车电子股份有限公司 | 对车载终端上的软件的测试验收方法及系统、智能终端、及服务器 |
CN106354642A (zh) * | 2016-08-29 | 2017-01-25 | 中国航空工业集团公司西安飞机设计研究所 | 一种机载中央维护系统软件测试方法及系统 |
WO2019085466A1 (zh) * | 2017-11-02 | 2019-05-09 | 平安科技(深圳)有限公司 | 关联测试方法、系统、应用服务器及计算机可读存储介质 |
CN108595317A (zh) * | 2017-12-28 | 2018-09-28 | 合肥工大高科信息科技股份有限公司 | 一种轨道交通安全计算机嵌入式自动化测试方法 |
CN108829608A (zh) * | 2018-07-09 | 2018-11-16 | 北京首汽智行科技有限公司 | 一种基于汽车模拟器的智能车载终端设备的自动化测试系统及方法 |
CN113535487A (zh) * | 2020-04-16 | 2021-10-22 | 杭州中天微系统有限公司 | 测试系统及方法 |
CN114006922A (zh) * | 2021-10-19 | 2022-02-01 | 中车青岛四方机车车辆股份有限公司 | 一种列车通信网络安全检测系统及检测方法 |
CN114006922B (zh) * | 2021-10-19 | 2024-06-28 | 中车青岛四方机车车辆股份有限公司 | 一种列车通信网络安全检测系统及检测方法 |
CN115328104A (zh) * | 2022-10-13 | 2022-11-11 | 湖南中车时代通信信号有限公司 | 一种列车运行监控系统自动化测试装置及测试方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102141961A (zh) | 一种列车车载软件的测试方法和测试系统 | |
CN104765681B (zh) | 列车传动控制软件自动化测试系统及方法 | |
CN103529711B (zh) | Atc车载设备自动测试方法及系统 | |
CN107944193A (zh) | 航电半实物仿真系统 | |
CN101464921B (zh) | 一种生成芯片工艺调整的测试向量的方法及系统 | |
CN106598848A (zh) | 一种关键字驱动的机载软件自动化测试方法及系统 | |
CN104850111B (zh) | 一种硬件在环测试方法及系统 | |
CN112365216A (zh) | 矿区无人运输仿真测试平台和矿区无人运输仿真方法 | |
RU2014151867A (ru) | Система дистанционной диагностики | |
CN108717808B (zh) | 基于三维激光扫描建模的隧道施工虚拟教学系统及方法 | |
CN103969055A (zh) | 汽车主动安全系统台架测试装置及方法 | |
CN104505126B (zh) | 一种动态存储器测试系统及方法 | |
CN102999041A (zh) | 适用于列车自动控制系统atc的环境仿真器 | |
CN102750834B (zh) | 用于交叉口交通信号控制器的性能检测装置及其检测方法 | |
CN107562969A (zh) | 航空发动机控制系统软件的集成方法和装置 | |
CN106294121B (zh) | 飞机嵌入式实时诊断推理算法试验方法 | |
CN105223336A (zh) | 一种模拟地铁盾构隧道地层空洞引发地层损失的试验装置及方法 | |
CN105550114A (zh) | 自动化测试方法、装置和移动终端 | |
CN103280147A (zh) | 3d机械设备维修培训系统及其方法 | |
CN106407580A (zh) | 基于脚本的规则检测遥控闭锁方法 | |
CN114706747A (zh) | 一种用于tacs系统的自动化测试系统 | |
CN101025619A (zh) | 一种便携式监控装置软件测试方法及调试仪 | |
CN106295808B (zh) | 飞机嵌入式实时诊断推理算法试验方法 | |
CN103744414A (zh) | 一种测试方法和测试设备 | |
CN113591323B (zh) | 嵌入式图像动态场景仿真成像系统及方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20110803 |