列车网络应用层控制软件自动化测试方法

文档序号:9546506阅读:392来源:国知局
列车网络应用层控制软件自动化测试方法
【技术领域】
[0001] 本发明主要涉及列车网络技术领域,特指一种列车网络应用层控制软件自动化测 试方法。
【背景技术】
[0002] 目前轨道交通行业内大部分可以提供列车网络控制软件的公司,其网络平台在硬 件以及底层驱动上是相对统一且成熟的。其中绝大部分的功能是通过列车网络应用层控制 软件来实现的,而不同的应用领域、不同的项目背景造成在统一的网络平台下,项目间功能 的差异化较大。且近年来列车网络接入的车载设备越来越多,列车网络承载的数据流越来 越大,网络控制软件功能越来越复杂,导致差异化越发的变大。
[0003]目前在轨道交通行业内网络控制软件自动化测试系统较少,大多是针对底层驱动 的自动化测试系统。少数几个针对网络应用层软件的自动化测试系统大多是将网络上开源 的自动化测试软件框架简单的移植到其网络平台上,需要开发专用的通信板卡与网络设备 进行接口,再通过面向对象、解释型的计算机语言来编写测试脚本(例如Python语言),然后 通过自动化测试软件来执行这些脚本并得到结果。另外定制化的测试方法运用于不同项目 的网络应用层软件的测试,将会造成资源浪费、成本巨大、效率低下。
[0004] 现有的网络应用层软件自动化测试系统,需要开发专用的通信板卡或者工控机来 接入被测网络系统,虽然可以重复使用,但是可同时进行的测试项目受通信板卡或者工控 机的数量约束,且存在硬件采购费用。另外,现有的网络应用层控制软件网络数据量大,且 不同项目间的通信协议是不可重复利用的;由于依赖于各种不同的通信协议,各种转化程 序以及测试脚本均是不可重复利用的。以上种种问题指明了已有的自动化测试系统的缺 点,即需要花费巨大的资源和成本,并且输入的工作量不比被测系统开发的工作量少,导致 测试效率低下。

【发明内容】

[0005] 本发明要解决的技术问题就在于:针对现有技术存在的技术问题,本发明提供一 种测试效率高、测试成本低的列车网络应用层控制软件自动化测试方法。
[0006] 为解决上述技术问题,本发明提出的技术方案为: 一种列车网络应用层控制软件自动化测试方法,包括以下步骤: 501、 测试开始,导入被测列车网络应用层控制软件的各种数据传输协议,并对各种数 据传输协议中各变量进行解析并定义,再存入变量库; 502、 编写协议转换程序,用于实现以太网协议与各种数据传输协议之间的数据转化; 503、 导入并执行预设的测试用例对各控制软件进行测试,如测试结果与期望值相符则 判断控制软件合格,否则为不合格。
[0007] 作为上述技术方案的进一步改进: 在步骤S03中,当测试完成后,生成测试报告并以表格或图形的形式展示或储存。
[0008] 预设的测试用例包括用例ID、前置条件、输入/操作步骤、期望结果、测试结论以 及实际输出值共六个要素,步骤S03中的测试过程为:读取用例ID、前置条件、输入/操作 步骤和期望结果,并转化为可执行的脚本代码进行测试,生成实际输出值与期望结果对比 生成测试结论。
[0009] 所述输入/操作步骤通过中文进行描述,并遵循"变量名+执行动作+参数"的格 式,其中变量名为步骤SOl中变量经解析及定义所得。
[0010] 所述期望结果通过中文进行描述,并遵循"变量名+判断条件+参数"的格式,其 中变量名为步骤SOl中变量经解析及定义所得,参数为数值或者中文名称,判断条件和中 文名称的参数均为事先配置。
[0011] 各种数据传输协议包括MVB协议、WTB协议、RS424协议、RS485协议、CAN协议和 以太网协议。
[0012] 在步骤SOl中,各种数据传输协议均为Excel格式,通过读取Excel固定表头或者 关键字获取数据传输协议的各个要素,将各个要素中的信号名转化为同等大小的变量名。
[0013] MVB协议包括五大要素,分别为端口号、端口周期、端口方向、端口大小、端口中信 号名称及大小。
[0014] 在步骤S03中,对被测控制软件的输入变量以及输出变量进行显示,并可对输入 变量进行变量强制。
[0015] 被测控制软件的输入变量以及输出变量经预设的表达式转化后再进行显示。
[0016] 与现有技术相比,本发明的优点在于: 本发明的列车网络应用层控制软件自动化测试方法,不用开发专用的通信板卡或者工 控机,减少测试过程中所需的硬件;导入各种数据传输协议来实现数据的自动定义,不同项 目的数据定义完全依靠数据传输协议,将极大减少人力、时间成本;另外只需对转化程序运 行平台的编程规则进行解析,即可自动生成转化程序,提高了测试效率。
【附图说明】
[0017] 图1为本发明的测试系统结构示意图。请提供图1和图3的Visio原图。
[0018] 图2为本发明的测试系统的方框图。
[0019] 图3为本发明测试方法中协议导入的流程图。
[0020] 图4为本发明测试方法中动作录制的流程图。
【具体实施方式】
[0021] 以下结合说明书附图和具体实施例对本发明作进一步描述。
[0022] 如图1至图4所示,本实施例的列车网络应用层控制软件自动化测试方法,包括以 下步骤: 501、 测试开始,导入被测列车网络应用层控制软件的各种数据传输协议,并对各种数 据传输协议中各变量进行解析并定义,再存入变量库; 502、 编写协议转换程序,用于实现以太网协议与各种数据传输协议之间的数据转化; 503、 导入并执行预设的测试用例对各控制软件进行测试,如测试结果与期望值相符则 判断控制软件合格,否则为不合格。
[0023] 本实施例中,本测试方法所依托的测试系统由PC端、陪测端和被测端三部分组 成,陪测端与被测端均为列车网络平台产品。其中PC端与陪测端之间通过以太网连接,数 据传输方式为UDP,陪测端与被测端之间为网络通信线缆,数据传输协议包括网络系统项目 中所使用到的MVB协议、WTB协议、RS485/422协议、CAN协议、以太网协议。陪测端主要通 过模拟采集被测端的所有输入数据,并检测被测端所有输出数据,通过编写转换软件实现。 陪测端/被测端可以是单个模块/单板,也可以使多个模块/单板组成的陪测/被测系统。
[0024] 本实施例中,在步骤S03中,当测试完成后,生成测试报告并以表格或图形的形式 展示或储存。
[0025] 本实施例中,各种数据传输协议包括MVB协议、WTB协议、RS424协议、RS485协议、 CAN协议和以太网协议。
[0026] 本实施例中,在步骤SOl中,各种数据传输协议均为Excel格式,且自动解析协议 中的变量并进行定义。以MVB协议为例,MVB通信协议必须要包含五大要素:1、端口号;2、 端口周期;3、端口方向;4、端口大小;5、端口中信号名称及大小。通过读取EXCEL固定表头 或者关键字获取五大要素,并将信号名转为同等大小的变量名存入变量库,协议导入流程 请参考图3。
[0027] 本实施例中,在步骤S02中,协议转换程序的生成过程如下: 因为自动化测试方法需在PC端上运行,通常需要通过以太网与被测端相连,如果被测 端不具备以太网接口,或者被测端应用程序并不支持以太网协议,则需要一个陪测端,通过 陪测端上的转换程序将以太网协议下的数据转为其他协议下的数据。例如被测端应用程序 仅支持MVB协议,那么在转换程序中,需要将UDP数据包(以太网协议)与MVB数据包(MVB 协议)相互转化。其中只需要对转换程序编程工具的编程规则进行解析,即可自动生成UDP 协议与其他通信协议相互转换的转换程序。
[0028] 以编程工具MULTIPR0G5. 0为例,编写一个支持UDP协议和MVB协议的应用程序时 要包括4个内容:1、定义数据类型;2、定义MVB端口信息(包括端口号、端口大小、物理地址 起始地址)和UDP端口信息(定义端口号);3、编写描述MVB数据包与UDP数据包映射关系的 主程序(使用MULTIPR0G5. 0编程工具支持的ST语言);4、任务运行周期。其中1、2、4点中的 信息,通过协议导入后即可获知,第3点中主程序(ST语言)则是描述UDP数据包与MVB数 据包相互映射的关系,可以由自动化测试系统自行决定其映射关系。例如,有3个32字节 大小的MVB数据包(MVB1、MVB2、MVB3)需要填入1个1024大小的UDP数据包,那么UDP数 据包的第1-32字节则对应MVBl数据包,第33-64字节则对应MVB2数据包,第65-96字节 则对应MVB3数据包。由于使用MULTIPR0G5. 0编程工具是可
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1