铁路信号计算机联锁系统的测试场景生成方法

文档序号:9910935阅读:971来源:国知局
铁路信号计算机联锁系统的测试场景生成方法
【技术领域】
[0001] 本发明涉及计算机联锁系统,特别是涉及一种铁路信号计算机联锁系统的测试场 景生成方法。
【背景技术】
[0002] 安全是铁路运输生产永恒的主题,而计算机联锁系统是保障铁路车站列车和机车 作业安全的关键系统,所以为保证系统的安全性必须对其进行高效、充分的测试。
[0003] 由于联锁系统业务逻辑关系的复杂性,手工测试存在测试不充分,测试效率低下 以及劳动强度大等弊端,而自动化测试能够替代人工操作,做到测试的规范化、程序化和简 单化,从而提高工作效率、缩短试验时间,并能消除人工操作而导致的失误。
[0004] 现有的联锁系统自动化测试研究多侧重于自动化测试平台的搭建,对测试案例的 自动化生成较少涉及,而联锁系统需要进行大量重复的测试案例设计,如需对每个道岔都 进行各种场景下定操、反操的操作。对于不同的被测站场,人工测试耗时费力且容易产生错 误,依赖的是测试人员的经验,及其对各种测试场景的准确把握。
[0005]在目前大多数的计算机联锁系统测试中,测试案例多为采用自然语言描述的测试 场景,由测试人员在测试过程中结合实际的被测对象(站场)转换成测试案例并进行手工测 试,而留下的仅仅是测试的结果。
[0006] 由于测试场景完全依赖于测试人员的经验,测试案例是否符合场景的要求,测试 案例数量是否完整等,都只能依赖于测试人员的测试操作;同时测试经验无法在不同被测 站场中进行推广;所有的测试过程,测试结果的判断,测试结果的统计等,也只能依靠人工 来进行。在这种情况下,整个的测试过程,测试周期漫长,测试内容和结果容易出现遗漏和 失误,测试经验无法在不同被测站场中进行推广。

【发明内容】

[0007] 本发明所要解决的技术问题是提供一种铁路信号计算机联锁系统的测试场景生 成方法,能实现对测试场景的精确描述,能结合被测站场的设备对照表自动生成所有测试 案例,能提高测试效率和有效降低人工测试的遗漏和失误。
[0008] 为解决上述技术问题,本发明提供的铁路信号计算机联锁系统的测试场景生成方 法包括如下步骤:
[0009] 步骤一、对描述测试场景的脚本进行格式定义,采用可扩展标记语言(XML)作为描 述测试场景的脚本,所述测试场景的XML文件的格式采用三层XML元素结构。
[0010] 第一层XML元素为根元素,通过所述第一层XML元素定义XML文件中包括有所述测 试场景。
[0011] 第二层元素定义一个以上的独立的所述测试场景。
[0012] 第三层元素定义多条测试命令。
[0013] 步骤二、按照步骤一定义的测试场景的脚本格式自动生成被测站场的所有测试场 景,包括分步骤:
[0014] 步骤21、通过所述第二层元素定义所述测试场景的名称、编号和被测试设备类型;
[0015] 步骤22、结合被测试设备类型和被测试设备相关联的设备类型对所述第三层元素 的各所述测试命令进行设置形成所述测试场景所需的各条测试指令并将各条所述测试指 令按照测试时所需要的测试顺序排列起来。
[0016] 进一步的改进是,所述第一层XML元素为〈TestScenario〉。
[0017] 进一步的改进是,所述第二层XML元素为〈Scenario〉,〈Scenario〉包括一个以上, 每一个〈Scenario〉代表一个独立的测试场景。
[00?8]进一步的改进是,〈Scenario〉有三个能进行设置的属性,分别为:
[0019] ScenarioName :测试场景名称,用于描述该测试场景用于测试联锁系统的何种功 能;
[0020] ScenarioID:测试场景的编号;
[0021 ] DeviceType:被测试设备类型。
[0022]进一步的改进是,所述第三层元素的测试命令包括:
[0023] 〈IOFeedBack〉:用于设定轨旁设备的Input值的反馈方式;
[0024] 〈ATSCmd〉:用于设定操作员生成的操作指令,包括列车自动监督系统(ATS)的指令 和人机接口(HMI)的指令;
[0025] 〈SendATSCmd〉:用于将通过〈ATSCmd〉生成的指令,按照顺序打包发送给联锁机来 执行;
[0026] <ZCCmd>:用于设定ZC生成的操作指令;
[0027] 〈SendZCCmd〉:用于将通过<ZCCmd>生成的指令,按照顺序打包发送给联锁机来执 行;
[0028] 〈Wait〉:用于设置等待时间;
[0029] <Init>:用于给联锁机发送重新初始化指令;
[0030] 〈Set〉:用于设定轨旁设备的input点状态;
[0031 ] 〈Submit〉:用于将通过〈Set〉指令调整的input状态打包发送给联锁机来使用; [0032] 〈CheckATSimulator〉:用于检查联锁机发送给ATS或者HMI的内部状态信息与测试 案例设定的状态值是否一致;
[0033] 〈ChecklOSimulator〉:用于检查轨旁设备1/0点状态值与测试案例设定的状态值 是否一致。
[0034] 进一步的改进是,〈IOFeedBack〉通过属性"Method"来设定轨旁设备的Input值的 反馈方式:
[0035] Me thod = 〃Auto〃:每个轨旁设备input值根据output值的变化而自动变化;
[0036] Me thod = "Manual 〃:每个轨旁设备output值的变化不会带来input值的变化。
[0037] 进一步的改进是,〈ATSCmd〉通过两个属性进行设置,分别为:
[0038] CmdName: ATS或者HMI指令的名称,名称都是预定义的关键字;
[0039] RelatedDevicetype:指令所针对的轨旁设备类型;
[0040] <ZCCmd>通过两个属性进行设置,分别为:
[00411 CmdName: ZC指令的名称,名称都是预定义的关键字;
[0042] RelatedDevicetype:指令所针对的轨旁设备类型。
[0043]进一步的改进是,〈Set〉通过三个属性进行设置,分别为:
[0044] RelatedDevicetype:指令所针对的轨旁设备类型;
[0045] RelayName:轨旁设备的input点名称;
[0046] RelayValue:轨旁设备input点的新状态。
[0047] 进一步的改进是,〈CheckATSimulator〉通过四个属性进行设置,分别为:
[0048] RelatedDevicetype:指令所针对的轨旁设备类型;
[0049] AttributeName:设备属性名称;
[0050] ExpectStatus:期望的属性值;
[0051 ] WaitMaxTime:检查上述属性值前所等待的时间,单位毫秒;
[0052] 〈ChecklOSimulator〉通过四个属性进行设置,分别为:
[0053] RelatedDevicetype:指令所针对的轨旁设备类型;
[0054] RelayName: I/O点名称;
[0055] ExpectStatus:期望的 I/O 点值;
[0056] WaitMaxTime:检查上述I/O点值前所等待的时间,单位毫秒。
[0057] 进一步的改进是,步骤二之后还包括如下形成所述被测站场的所有测试案例的步 骤:
[0058] 生成所述被测站场的被测试设备类型和被测试设备相关联的设备类型的设备对 照表;
[0059] 将所述设备对照表和所述被测站场的所有所述测试场景进行匹配形成所述被测 站场的所有测试案例。
[0060] 本发明通过采用XML文件对描述测试场景的脚本的格式进行特别定义,对这种XML 文件进行三层XML元素结构的定义,将格式统一的XML文件结合被测试设备类型和被测试设 备相关联的设备类型能够自动生成被测站场的所有测试场景,该测试场景的生成方法能适 用于任何铁路信号站场并且能实现对测试场景的精确描述;而将精确描述的测试场景和被 测站场的设备对照表进行匹配结合能够自动生成被测站场的所有测试案例,从而能提高计 算机联锁系统的测试效率和能有效降低人工测试的遗漏和失误。
【附图说明】
[0061] 下面结合附图和【具体实施方式】对本发明作进一步详细的说明:
[0062] 图1是本发明实施例方法的流程图。
【具体实施方式】
[0063] 如图1所示,是本发明实施例方法的流程图。本发明实施例铁路信号计算机联锁系 统的测试场景生成方法包括如下步骤:
[0064]步骤一、对描述测试场景的脚本进行格式定义,采用XML文件作为描述测试场景的 脚本,所述测试场景的XML文件的格式采用三层XML元素结构。
[0065]第一层XML元素为根元素,通过所述第一层XML元素定义XML文件中包括有所述测 试场景。本发明实施例中,所述第一层XML元素为〈TestScenario>。
[0066] 第二层元素定义一个以上的独立的所述测试场景。本发明实施例中,所述第二层 XML元素为〈Scenario〉,〈Scenario〉包括一个以上,每一个〈Scenario〉代表一个独立的测试 场景。〈Scenario〉有三个能进行设置的属性,分别为:
[0067] ScenarioName :测试场景名称,用于描述该测试场景用于测试联锁系统的何种功 能。
[0068] ScenarioID:测试场景的编号。
[0069] DeviceType:被测试设备类型。
[0070]第三层元素定义多条测试命令。
[0071]所述第三层元素的测试命令包括:
[0072] 〈IOFeedBack〉:用于设定轨旁设备的Input值的反馈方式;
[0073] 〈ATSCmd〉:用于设定操作员生成的操作指令,包括ATS的指令和HMI的指令;
[0074] 〈SendATSCmd〉:用于将通过〈ATSCmd〉生成的指令,按照顺序打包发送给联锁机来 执行;
[0075] <ZCCmd>:用于设定ZC生成的操作指令;
[0076] 〈SendZCCmd〉:用于将通过<ZCCmd>生成的指令,按照顺序打包发送给联锁机来执 行;
[0077] 〈Wait〉:用于设置等待时间;
[0078] <Init>:用于给联锁机发送重新初始化指令;
[0079] 〈Set〉:用于设定轨旁设备的input点状态;
[0080] 〈Submit〉:用于将通过〈Set〉指令调整的input状态打包发送给联锁机来使用;
[0081 ] 〈CheckATSimulator〉:用于检查联锁机发送给ATS或者HMI的内部状态信息与测试 案例设定的状态值是否一致;
[0082] 〈ChecklOSimulator〉:用于检查轨旁设备1/0点状态值与测试案例设定的状态值 是否一致。
[0083] 步骤二、按照步骤一定义的测试场景的脚本格式自动生成被测站场的所有测试场 景,包括分步骤:
[0084] 步骤21
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1