• 查询稿件
  • 获取最新论文
  • 知晓行业信息
官方微信 欢迎关注

基于EFSM模型的铁路信号安全软件单元测试技术研究

王飞, 李一楠, 孙文哲, 赵晓宇, 刘雅晴

王飞, 李一楠, 孙文哲, 赵晓宇, 刘雅晴. 基于EFSM模型的铁路信号安全软件单元测试技术研究[J]. 铁路计算机应用, 2023, 32(10): 68-73. DOI: 10.3969/j.issn.1005-8451.2023.10.14
引用本文: 王飞, 李一楠, 孙文哲, 赵晓宇, 刘雅晴. 基于EFSM模型的铁路信号安全软件单元测试技术研究[J]. 铁路计算机应用, 2023, 32(10): 68-73. DOI: 10.3969/j.issn.1005-8451.2023.10.14
WANG Fei, LI Yinan, SUN Wenzhe, ZHAO Xiaoyu, LIU Yaqing. Unit testing technology for railway signal safety software based on EFSM model[J]. Railway Computer Application, 2023, 32(10): 68-73. DOI: 10.3969/j.issn.1005-8451.2023.10.14
Citation: WANG Fei, LI Yinan, SUN Wenzhe, ZHAO Xiaoyu, LIU Yaqing. Unit testing technology for railway signal safety software based on EFSM model[J]. Railway Computer Application, 2023, 32(10): 68-73. DOI: 10.3969/j.issn.1005-8451.2023.10.14

基于EFSM模型的铁路信号安全软件单元测试技术研究

基金项目: 中国国家铁路集团有限公司科技研究开发计划(P2021G012);中国铁道科学研究院集团有限公司科研项目(2022YJ193);北京华铁信息技术有限公司科研项目(2022HT14)
详细信息
    作者简介:

    王 飞,助理研究员

    李一楠,研究员

  • 中图分类号: U284.91 : TP39

Unit testing technology for railway signal safety software based on EFSM model

  • 摘要: 铁路信号安全软件内部逻辑复杂,通过充分的单元测试能够更好地发现和排除软件内部的缺陷。文章分析单元测试常用方法,并结合铁路信号安全软件单元测试技术要求,提出一种基于扩展有限状态机(EFSM, Enhanced Finite State Machine)模型的黑白盒融合单元测试方法。使用自动化测试工具Cantata,以无线超时降级场景为实例,验证该方法是否可以满足测试场景的完备性,并且关注软件结构是否被完全覆盖。根据覆盖结果,对未覆盖原因进行分析,判断是否存在异常场景,并针对未覆盖分支补充测试场景,丰富了测试案例,从而保障了铁路信号系统的可靠性。
    Abstract: The internal logic of railway signal safety software is complex, and through sufficient unit testing, defects within the software can be better discovered and eliminated. This paper analyzed common methods of unit testing and proposed a black and white box fusion unit testing method based on the Extended Finite State Machine (EFSM) model, combined with the technical requirements of railway signal safety software unit testing. The paper used the automated testing tool Cantata as an example to verify whether the method can meet the completeness of the testing scenario and paied attention to whether the software structure was fully covered, analyzed the reasons for the lack of coverage based on the coverage results to determine whether there were abnormal scenarios, provided supplementary testing scenarios for the uncovered branches, which enriched the testing cases and ensured the reliability of the railway signal system.
  • 图  1   Cantata进行软件测试的策略

    图  2   黑白盒的融合单元测试方法

    图  3   无线超时降级场景的EFSM模型

    图  4   覆盖率未满足测试结果截图

    图  5   未覆盖原因截图

    图  6   覆盖率测试通过结果截图

    表  1   模型中各状态含义

    状态 名称 含义
    s1 automaticLevelFallback _idle 自动降级初始状态
    s2 receive_radio_contace_loss 启动降级处理状态
    s3 set_CTCS2_level 降级到C2等级状态
    s4 receive_radio_contace_recover 终止降级处理状态
    s5 unset_CTCS2_level 维持C3等级状态
    下载: 导出CSV

    表  2   模型中各迁移含义

    迁移 内容 含义
    t1 {s1,i1,g1,op1,s2} i1含义为无线丢失
    g1含义为当前控制等级为C3级,模式为完全模式
    op1含义为输出常用制动命令
    t2 {s2,i2,g2,op2,s3} i2含义为列车当前运行速度和C2允许速度
    g2含义为无线超时制动10 s内,列车速度不高于160 km/h,且不高于C2等级允许速度
    op2含义为执行自动降级到等级C2
    t3 {s2,i3,g3,op3,s5} i3含义为列车当前运行速度和C2允许速度
    g3含义为无线超时制动10 s内,列车速度高于160 km/h,但低于C2等级允许速度
    op3含义为不转入C2等级
    t4 {s2,i4,g4,op4,s3} i4含义为列车当前运行速度和C2允许速度
    g4含义为无线超时制动10 s 后,列车速度不高于C2等级允许速度
    op4含义为执行自动降级到等级C2
    t5 {s2,i5,g5,op5,s5} i5含义为列车当前运行速度和C2允许速度
    g5含义为无线超时制动10 s后,列车速度高于C2等级允许速度
    op5含义为不转入C2等级
    t6 {s2,i6,g6,op6,s4} i6含义为无线状态当前为恢复连接状态
    g6含义为当前控制等级为C3级,模式为完全模式
    op6含义为终止降级执行缓解常用制动
    下载: 导出CSV

    表  3   黑盒测试用例

    场景全局变量驱动参数桩函数设置期望输出
    1模式为完全模式
    当前等级为C3等级
    无线丢失--最大常用制动
    2模式为完全模式
    当前等级为C3等级
    无线丢失
    降级制动定时器= 9 s
    列车当前运行速度= 159 km/h
    C2等级允许运行速度= 160 km/h
    降级为C2等级
    3模式为完全模式
    当前等级为C3等级
    无线丢失
    降级制动定时器= 9 s
    列车当前运行速度= 161 km/h
    C2等级允许运行速度= 162 km/h
    保持C3等级
    4模式为完全模式
    当前等级为C3等级
    无线丢失
    降级制动定时器= 11 s
    列车当前运行速度= 161 km/h
    C2等级允许运行速度= 162 km/h
    降级为C2等级
    5模式为完全模式
    当前等级为C3等级
    无线丢失
    降级制动定时器= 11 s
    列车当前运行速度= 159 km/h
    C2等级允许运行速度= 158 km/h
    保持C3等级
    6模式为完全模式
    当前等级为C3等级
    无线恢复--缓解最大常用制动
    下载: 导出CSV

    表  4   白盒测试用例

    用例 全局变量 驱动参数 桩函数设置 期望输出
    1 模式为完全模式
    当前等级为C2等级
    -- -- 不满足降级条件维持C2等级
    2 模式为待机模式
    当前等级为C3等级
    -- -- 保持C3等级
    下载: 导出CSV

    表  5   边界值分析测试用例

    用例 全局变量 驱动参数 桩函数设置 期望输出
    1 模式为完全模式
    当前等级为C3等级
    无线丢失
    降级制动定时器=10 s
    列车当前运行速度= 161 km/h
    C2等级允许运行速度= 161 km/h
    降级为C2等级
    2 同上 无线丢失
    降级制动定时器= 9 s
    列车当前运行速度= 160 km/h
    C2等级允许运行速度= 160 km/h
    降级为C2等级
    下载: 导出CSV
  • [1] 杨 森,秦晓光,王 飞,等. 基于工程数据的测试脚本自动生成方案研究[J]. 铁道通信信号,2023,59(1):19-24,35.
    [2] 张 宇,李 昂,王 飞,等. 面向ATP车载设备的通用仿真测试平台研究[J]. 铁道通信信号,2021,57(12):1-6.
    [3] 杨志杰. CTCS-3级列控系统关键设备自主化研究[J]. 中国铁路,2018(7):1-6.
    [4] 陈慧琍,陈晓轩. 基于SmartUnit的安全通信系统单元测试用例自动生成[J]. 铁道通信信号,2020,56(6):43-47.
    [5] 中国国家铁路集团有限公司. 铁路信号安全软件编程暂行技术要求:TJ/DW 230-2020[S]. 北京:中国铁道出版社有限公司. 2020.
    [6] 中国国家铁路集团有限公司. 铁路信号安全软件测试暂行技术要求:TJ/DW 231-2020[S]. 北京:中国铁道出版社有限公司. 2020.
    [7] 凌 珊. 铁路信号软件单元测试研究[J]. 铁路计算机应用,2020,29(2):58-61.
    [8] 任丽霞. 计算机联锁软件的黑盒测试过程分析与实现[J]. 铁路计算机应用,2018,27(2):39-43.
    [9]

    European Committee for Electrotechnical Normalization. BS EN 50128: 2011 Railway applications. Communication, signalling and processing systems. Software for railway control and protection systems [S].Brussels, Belgium: European Committee for Electrotechnical Normalization, 2011.

    [10] 王蒙蒙,罗 杨. 基于扩展有限状态机测试用例生成方法[J]. 电子设计工程,2020,28(6):97-100,106.
    [11] 中国国家铁路集团有限公司. 自主化CTCS-3级列控车载设备暂行技术条件:TJ/DW205-201912.1[S]. 北京:中国国家铁路集团,2019:78-79.
图(6)  /  表(5)
计量
  • 文章访问数:  43
  • HTML全文浏览量:  17
  • PDF下载量:  9
  • 被引次数: 0
出版历程
  • 收稿日期:  2023-04-13
  • 刊出日期:  2023-10-30

目录

    /

    返回文章
    返回