CN108304283A - 一种故障注入方法、系统及故障注入管理系统 - Google Patents

一种故障注入方法、系统及故障注入管理系统 Download PDF

Info

Publication number
CN108304283A
CN108304283A CN201711382436.1A CN201711382436A CN108304283A CN 108304283 A CN108304283 A CN 108304283A CN 201711382436 A CN201711382436 A CN 201711382436A CN 108304283 A CN108304283 A CN 108304283A
Authority
CN
China
Prior art keywords
failure
strategy
excitation
fault
instruction
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
CN201711382436.1A
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.)
Beijing Watertek Information Technology Co Ltd
Original Assignee
Beijing Watertek Information Technology Co 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 Beijing Watertek Information Technology Co Ltd filed Critical Beijing Watertek Information Technology Co Ltd
Priority to CN201711382436.1A priority Critical patent/CN108304283A/zh
Publication of CN108304283A publication Critical patent/CN108304283A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2273Test methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2205Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

本发明公开了一种故障注入方法、系统及故障注入管理系统,该故障注入方法包括:加载有远程激励接口的故障注入系统通过远程激励接口接收外部激励系统发送的故障激励指令,故障激励指令用于指示所要激励执行的故障策略信息;故障注入系统按照故障策略信息执行相应的故障策略。本发明公开的故障注入方法、系统及故障注入管理系统避免了故障注入系统与外部系统的时间不统一导致的分析测试结果准确性不高的问题。

Description

一种故障注入方法、系统及故障注入管理系统
技术领域
本发明涉及计算机技术,尤指一种故障注入方法、系统及故障注入管理系统。
背景技术
故障注入是进行产品测试和系统验证的重要技术手段,通过有意识的向系统注入故障来加速测试过程。故障注入多应用于航天航空、国防、船舰等领域,由于航天航空等设备在正常运行过程中出现故障的原因往往是不可预知的,所以在正常环境中人为注入各种故障来检测测试设备的可靠性和正确性。
目前,在实际应用中,单一的故障注入是没有太大意义的,故障注入系统需要联合外部系统在适当的时机有目的的进行故障注入,与外部系统联合对通信总线进行测试。然而,当故障注入系统与外部系统联合对通信总线进行测试时,如果故障注入系统与外部系统的时间不统一,则无法正确分析测试结果。
发明内容
为了解决上述技术问题,本发明提供了一种故障注入方法、系统及故障注入管理系统,避免了故障注入系统与外部系统的时间不统一导致的分析测试结果准确性不高的问题。
第一方面,本发明提供了一种故障注入方法,包括:
加载有远程激励接口的故障注入系统通过所述远程激励接口接收外部激励系统发送的故障激励指令,所述故障激励指令用于指示所要激励执行的故障策略信息;
所述故障注入系统按照所述故障策略信息执行相应的故障策略。
第二方面,本发明提供了一种故障注入方法,包括:
加载有远程激励接口的外部激励系统确定故障策略执行时间序列;
所述外部激励系统根据所述故障策略执行时间序列生成故障激励指令序列;所述故障激励指令序列为在每一个故障策略执行时间段所要发送的故障激励指令所组成的序列;所述故障激励指令用于指示所要激励执行的故障策略信息;
所述外部激励系统按照所述故障激励指令序列依次通过所述远程激励接口发送对应的故障激励指令给故障注入系统。
第三方面,本发明提供了一种故障注入系统,包括:
主控设备,所述主控设备加载有远程激励接口,所述主控设备用于通过所述远程激励接口接收外部激励系统发送的故障激励指令,所述故障激励指令用于指示所要激励执行的故障策略信息;按照所述故障策略信息控制故障注入设备执行相应的故障策略。
所述故障注入设备,用于执行相应的故障策略。
第四方面,本发明提供了一种故障注入系统,包括:远程激励接口,所述远程激励接口包括:
确定模块,用于确定故障策略执行时间序列;
生成模块,用于根据所述故障策略执行时间序列生成故障激励指令序列;所述故障激励指令序列为在每一个故障策略执行时间段所要发送的故障激励指令所组成的序列;所述故障激励指令用于指示所要激励执行的故障策略信息;
远程激励模块,用于按照所述故障激励指令序列依次发送对应的故障激励指令给故障注入系统。
第五方面,本发明提供了一种故障注入系统,包括:存储器和处理器,存储器用于存储执行指令;处理器调用所述执行指令,用于执行如第二方面实施例所述的故障注入方法。
第六方面,本发明提供了一种故障注入管理系统,包括如第三方面实施例所述的故障注入系统和如第四方面和第五方面任一实施例所述的外部激励系统。
本发明实施例提供的故障注入方法、系统及故障注入管理系统,外部激励系统加载远程激励接口,通过远程激励接口的发送端给故障注入系统远程激励接口的接收端发送故障激励指令,当主控设备通过远程激励接口收到故障激励指令后,会像执行本地故障激励指令一样的去执行,首先解析故障激励指令,然后根据故障策略与故障注入设备通信,控制故障注入设备执行相应的故障策略。故障注入系统只有在通过远程激励接口接收到外部激励接口发送的故障激励指令时,才执行根据故障激励指令执行相应的故障策略,从而实现故障注入系统按具备精确时间控制的外部激励系统提供的故障激励指令执行故障策略,避免了故障注入系统与外部系统的时间不统一导致的分析测试结果准确性不高的问题。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
附图说明
附图用来提供对本发明技术方案的进一步理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本发明的技术方案,并不构成对本发明技术方案的限制。
图1为本发明实施例一提供的故障管理系统的结构示意图;
图2为本发明实施例二提供的故障管理系统的结构示意图;
图3为本发明实施例提供的故障注入方法的流程交互图;
图4为本发明实施例一提供的故障注入的数据流向结构图;
图5为本发明实施例提供的故障注入的时间轴示意图;
图6为本发明实施例提供的故障注入的执行故障策略时刻表示意图;
图7为本发明实施例二提供的故障注入的数据流向结构图;
图8为本发明实施例提供的远程激励接口接收数据和处理指令流程图;
图9为本发明实施例提供的故障注入系统的结构示意图;
图10为本发明实施例一提供的外部激励系统的结构示意图;
图11为本发明实施例二提供的外部激励系统的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行。并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
图1为本发明实施例一提供的故障管理系统的结构示意图,图2为本发明实施例二提供的故障管理系统的结构示意图,如图1和图2所示,本发明实施例提供的故障管理系统包括外部激励系统和故障注入系统。首先,为了解决故障注入系统按本地时间的绝对时间执行故障策略,本发明实施例借助具备精确时间控制的外部系统作为外部激励系统,由外部激励系统通过本发明提供的远程激励接口与故障注入系统之间进行远程通信,实现故障注入系统按具备精确时间控制的外部激励系统提供的相对时间或相对时间序列执行;其次,为了解决在现实的使用环境中,单一的故障注入没有太大意义的问题,本发明实施例提供可以与故障注入系统进行联合测试的外部激励系统,如图1所示,故障注入系统联合外部激励系统在适当的时机向外部设备进行有目的的故障注入,以及如图2所示,故障注入系统与外部激励系统联合对通信总线进行测试,此时的外部激励系统可以采用仿真系统。具体的,远程激励接口采用的是传输控制协议(Transmission Control Protocol,简称TCP)的通信协议,以动态连接库的方式实现通信的接收端和发送端。外部激励系统加载远程激励接口,通过远程激励接口的发送端给故障注入系统远程激励接口的接收端发送包含故障激励指令的数据,远程激励接口接收到数据后,首先分析数据内容,再将解析的故障激励指令交由主控设备处理。当主控设备收到远程激励接口发送的故障激励指令后,会像执行本地指令一样的去执行,首先解析故障激励指令,然后根据故障策略与故障注入设备通信,控制故障注入设备执行相应的故障策略。
需要说明的是,本发明实施例提供的故障注入系统是IceBlade故障注入系统,IceBlade故障注入系统是一套对通讯链路进行故障注入并对测试设备进行检测的系统级综合测试设备。该设备应用于航天航空、国防、船舰等领域,独立运行于测试设备之外,以最严酷而且最简洁的手段验证测试设备的可靠性、稳定性和正确性。IceBlade故障注入系统很好的做到了多种通信总线综合性的复合式故障注入,并在系统内的协同工作中通过全系统时标统一很好的解决了系统内多个故障注入设备时标一致性问题。
图3为本发明实施例提供的故障注入方法的流程交互图,如图3所示,本发明实施例提供的故障注入方法包括:
S301:加载有远程激励接口的外部激励系统确定故障策略执行时间序列。
具体的,外部激励系统具备精确时间控制,由外部激励系统通过加载远程激励接口与故障注入系统通信,实现故障策略按时间序列执行的功能。外部激励系统根据实际使用环境中在某个时间或某个时间段所要实现注入故障的时间,即可确定故障注入系统注入故障策略的故障策略执行时间序列。其中,实际使用环境中所要实现注入故障的时间可以由工作人员在外部激励系统设置,也可以又工作人员在故障注入系统设置,然后由故障注入系统通过远程激励接口发送给外部激励系统。
S302:外部激励系统根据故障策略执行时间序列生成故障激励指令序列。
其中,故障激励指令序列为在每一个故障策略执行时间段所要发送的故障激励指令所组成的序列;故障激励指令用于指示所要激励执行的故障策略信息。
具体的,外部激励系统将故障策略执行时间序列。比如,外部激励系统确定的故障执行时间序列为在14:00:00执行数据传输错误故障,在14:00:20需要执行幅度调节故障,此时,外部激励系统生成的故障激励指令序列为:{14:00:00:数据传输错误故障激励指令;14:00:20:幅度调节故障激励指令}。
S303:外部激励系统按照故障激励指令序列依次通过远程激励接口发送对应的故障激励指令给故障注入系统。
具体的,外部激励系统加载远程激励接口,通过远程激励接口依次把故障激励指令序列中的故障激励指令在对应的故障策略执行时间段发送给故障注入系统,以使故障注入系统在接收到故障激励指令时执行相应的故障策略,从而实现故障注入系统按具备精确时间控制的外部激励系统提供的相对时间或相对时间序列执行故障策略,避免了故障注入系统与外部激励系统的时间不统一导致的分析测试结果准确性不高的问题。
S304:加载有远程激励接口的故障注入系统通过远程激励接口接收外部激励系统发送的故障激励指令。
其中,故障激励指令用于指示所要激励执行的故障策略信息。
具体的,故障注入系统的主控设备加载远程激励接口,通过远程激励接口接收外部激励系统发送的故障激励指令。
S305:故障注入系统按照故障策略信息执行相应的故障策略。
具体的,故障注入系统通过远程激励接口接收到外部激励系统发送的故障激励指令后,故障注入系统按照故障激励指令指示的所要激励执行故障策略信息,执行相应的故障策略。比如,故障注入系统的主控设备通过远程激励接口接收到故障激励指令为数据传输错误故障激励指令,则主控设备控制故障注入设备执行相应的数据传输错误故障策略。
本发明实施例提供的故障注入方法,外部激励系统加载远程激励接口,通过远程激励接口的发送端给故障注入系统远程激励接口的接收端发送故障激励指令,当主控设备通过远程激励接口收到故障激励指令后,会像执行本地故障激励指令一样的去执行,首先解析故障激励指令,然后根据故障策略与故障注入设备通信,控制故障注入设备执行相应的故障策略。故障注入系统只有在通过远程激励接口接收到外部激励接口发送的故障激励指令时,才执行根据故障激励指令执行相应的故障策略,从而实现故障注入系统按具备精确时间控制的外部激励系统提供的故障激励指令执行故障策略,避免了故障注入系统与外部系统的时间不统一导致的分析测试结果准确性不高的问题。
进一步地,S304之前,本发明实施例提供的故障注入方法还包括:故障注入系统通过远程激励接口将故障策略库中的故障策略路径发送给外部激励系统。
相应地,外部激励系统通过远程激励接口接收故障注入系统发送的故障策略库中的故障策略路径。
其中,故障策略路径描述了待执行故障策略在控制故障注入设备的主控设备中的位置。
具体的,故障注入系统中的主控设备除了控制故障注入设备之外,主控设备还用于故障策略的编辑,将编辑的故障策略保存到策略库中。策略库用于保存故障注入的故障策略,每个故障策略是由至多10个序列组成,每个序列是由若干个故障项活动与高级应用活动组成,序列之间的优先级是同级的关系。所有故障策略的实施案例都可以保存到策略库,当需要使用时,直接调用策略库中的故障策略即可。需要说明的是,主控设备在本地控制计算机上控制故障注入设备时,可以不使用策略库,而是现场编辑策略;但通过外部激励系统远程控制故障注入设备时,就无法现场编辑策略了,此时需要事先把编辑好的策略保存到策略库中,通过定义的远程激励接口协议将策略库中的一个或多个故障策略路径发送给外部激励系统,以便外部激励系统在通过远程激励接口控制故障注入系统执行相应故障策略时,只需将故障策略路径发送给故障注入系统即可。
进一步地,在图3所示实施例中,故障策略信息包括:故障策略路径和故障策略执行动作。
故障注入系统按照故障策略信息执行相应的故障策略包括:故障注入系统根据故障策略路径,在故障策略库中查找与故障策略路径对应的故障策略;故障注入系统按故障执行动作执行故障策略。
具体的,外部激励系统通过远程激励接口发送给故障注入系统的故障激励指令中的故障策略信息包括故障策略路径和故障策略执行动作。当故障注入系统通过远程激励接口接收到外部激励系统发送的故障激励指令时,由本地计算机(主控设备)调用故障策略路径相应的故障策略,控制故障注入设备按照故障执行动作执行相应的故障策略。
进一步地,在图3所示实施例中,故障执行动作包括:启动故障策略、加载故障策略或停止故障策略。
具体的,故障执行动作有启动、停止和加载故障策略三种,当为启动或加载故障策略时,主控设备会根据接收到的故障策略路径加载故障策略到活动编辑区,保证操作过程同本地保持一致,实现对本地操作的兼容。
进一步地,故障策略信息还包括:故障策略延迟时间。
故障注入系统按故障执行动作执行故障策略,包括:在故障策略的延迟时间到达时,故障注入系统再按故障执行动作执行故障策略。
具体的,故障策略延迟时间指的是故障注入系统中的主控设备收到故障激励指令后,不立即执行相应的故障策略,而是等待指定的时间后再控制故障注入设备执行相应的故障策略。一般的,可以设置在故障策略的延迟时间为0时表示故障策略的延迟时间到达。
进一步地,故障激励指令序列包括每一故障策略对应的故障激励指令和该故障激励指令的激励时间。
外部激励系统按照故障激励指令序列依次通过远程激励接口发送对应的故障激励指令给故障注入系统,包括:外部激励系统依次在每一个故障激励指令的激励时间,通过远程激励接口将对应的故障激励指令发送给故障注入系统。
具体的,外部激励系统加载远程激励接口,通过远程激励接口依次在每一个故障激励指令的激励时间将对应的故障激励指令发送给故障注入系统。以S302中生成的故障激励指令序列{14:00:00:数据传输错误故障激励指令;14:00:20:幅度调节故障激励指令}为例,此时,外部激励系统在14:00:00加载远程激励接口,通过远程激励接口发送数据传输错误故障激励指令给故障注入系统;在14:00:20加载远程激励接口;通过远程激励接口发送幅度调节故障激励指令给故障注入系统。
进一步地,在故障策略执行时间段所要发送的故障激励指令为多个时,故障激励指令序列还包括故障激励指令的间隔时间。
外部激励系统按照故障激励指令序列依次通过远程激励接口发送对应的故障激励指令给故障注入系统,包括:外部激励系统按照故障激励指令的间隔时间,依次将每一个故障激励指令通过远程激励接口将发送给故障注入系统。
具体的,在故障策略执行时间段所要发送的故障激励指令为多个时,外部激励系统按照故障激励指令的间隔时间,依次将每一个故障激励指令通过远程激励接口将发送给故障注入系统。比如,生成的故障激励指令序列为:T1时间段(14:00:00到14:00:20):发送数据传输错误故障激励指令和幅度调节故障激励指令,间隔时间为20秒,此时,外部激励系统在14:00:00加载远程激励接口,通过远程激励接口发送数据传输错误故障激励指令给故障注入系统;在14:00:20加载远程激励接口;通过远程激励接口发送幅度调节故障激励指令给故障注入系统。
举例来说,以按时间序列执行故障策略为例,图4为本发明实施例一提供的故障注入的数据流向结构图,本发明实施例中FireBlade仿真系统与RS232故障注入设备的通道一相连,数据流向结构图如图4所示。本发明实施例以FireBlade仿真系统应用RS232的通信为例,FireBlade仿真系统通过RS232总线往外发送数据,数据经过故障注入设备处理后再回到FireBlade仿真系统。在FireBlade仿真系统创建一个RS232设备,连续发送数据,发送数据为0x550xaa 0x010x020x030x040x050x06,数据的协议格式设置为:数据长度8位,停止位1位,无校验,波特率是9600。
IceBlade主控设备编辑故障策略,并保存在策略库中。“数据传输错误”活动的编辑,根据硬件的连接,这里“通道选择”设置为通道一,“活动执行类型”设置为非阻塞式,“处理方式”设置为帧定位,定位字数设置为2,两个定位字分别为0x55和0xaa,对应的掩码为0x1FE和0x1FE,在数据处理组中这里这设置一组,起始字设为3,字数设置为2,执行操作为替换,两个替换字分别为0x0E和0x0F,对应掩码分别为0x1FE和0x1FE,保存设置,并将活动保存到策略库,工程名为“project_data_error.prj”。
“幅度调节”活动编辑,根据硬件的连接,这里“通道选择”设置为通道一,“活动执行类型”设置为非阻塞式,幅度调节方式为固定值,0状态替代值为6000,1状态替代值为-6000,保存为工程project_range_change_6.prj。将活动的0状态替代值改为7000、8000、9000、10000、11000、12000六组,对应的1状态替代值改为-7000、-8000、-9000、-10000、-11000、-12000六组,保存的工程名分别为project_range_change_7.prj、project_range_change_8.prj、project_range_change_9.prj、project_range_change_10.prj、project_range_change_11.prj、project_range_change_12.prj。
“速率调节”活动编辑,根据硬件的连接,这里“通道选择”设置为通道一,“活动执行类型”设置为非阻塞式,输入波特率为9600,输出波特率偏移为0,保存工程为project_rate_change0.prj。将输出波特率偏移分别改为5%、10%、15%、20%、-5%、-10%、-15%、-20%八组,保存的工程名分别为project_rate_change5.prj、project_rate_change10.prj、project_rate_change15.prj、project_rate_change20.prj、project_rate_change-5.prj、project_rate_change-10.prj、project_rate_change-15.prj、project_rate_change-20.prj。
图5为本发明实施例提供的故障注入的时间轴示意图,如图5所示,故障活动按时间轴执行,在T1时间段无故障执行,T2时间段执行数据传输错误故障项,在T3时间段执行幅度调节故障项,在T4时间段执行速率调节故障项,仿真系统在不同时间段激励不同的故障策略,以此检测各种参数指标。在T1时间段,仿真系统没有激励任何故障策略,数据的收发将正常,在T2时间段,仿真系统收到的数据将和发送的数据不一样,在T3阶段,由于幅度的不断变换,仿真系统将在某个时刻接收的数据与发送的数据不一样,在T4阶段,由于速率的变换,仿真系统将在某个时刻接收不到数据或者接收不到正确的数据。根据四个时间端的执行过程,就能测出通信的容错性和对速率的适应范围。
T1时间段,仿真系统不激励任何故障策略,RS232故障注入设备的通道一将直接导通,等同于一根导线,仿真系统发送端发送的数据为0x55 0xaa 0x01 0x02 0x03 0x040x05 0x06,接收端接收的数据将同样是0x55 0xaa 0x01 0x02 0x03 0x04 0x05 0x06。
T2时间段,仿真系统在T2的起始时间,向IceBlade主控设备发送故障激励指令,指令内容:策略路径是IceBlade主控设备所在本机策略库里的工程project_dataerror.prj,动作类型是启动,延迟执行时间是2秒。当IceBlade主控设备接收到并解析出该指令后,将立即执行,同时在仿真系统的接收端接接收到变化了的数据:0x55 0xaa 0x01 0x02 0x0E0x0F 0x05 0x06。在T2的结束时间,仿真系统将向IceBlade主控设备发送故障停止指令,指令内容:策略路径是空,动做类型是停止,延迟执行时间是0,当IceBlade主控设备接收到并解析出该指令后,将立即执行,停止RS232设备上执行的所有故障策略。
T3时间段,在此时间段仿真系统将发送多个故障激励指令,指令之间的间隔时间是5秒,第一个故障激励指令内容:策略路径是IceBlade主控设备所在本机策略库里的工程project_range_change_6.prj,动作类型是启动,延迟执行时间是0;第二个故障激励指令内容:策略路径是IceBlade主控设备所在本机策略库里的工程project_range_change_7.prj,动作类型是启动,延迟执行时间是0;第三个故障激励指令内容:策略路径是IceBlade主控设备所在本机策略库里的工程project_range_change_8.prj,动作类型是启动,延迟执行时间是0;第四个故障激励指令内容:策略路径是IceBlade主控设备所在本机策略库里的工程project_range_change_9.prj,动作类型是启动,延迟执行时间是0;第五个故障激励指令内容:策略路径是IceBlade主控设备所在本机策略库里的工程project_range_change_10.prj,动作类型是启动,延迟执行时间是0;第六个故障激励指令内容:策略路径是IceBlade主控设备所在本机策略库里的工程project_range_change_11.prj,动作类型是启动,延迟执行时间是0;第七个故障激励指令内容:策略路径是IceBlade主控设备所在本机策略库里的工程project_range_change_12.prj,动作类型是启动,延迟执行时间是0;在以上启动指令之后都对应一个相同的停止指令,指令内容:策略路径是空,动作类型是停止,延迟执行时间是0。当IceBlade主控设备接收到并解析出以上指令后,将立即执行。
T4时间段,在此时间段仿真系统将发送多个故障激励指令,指令之间的间隔时间是10秒,第一个故障激励指令内容:策略路径是IceBlade主控设备所在本机策略库里的工程project_rate_change20.prj,动作类型是启动,延迟执行时间是0;第二个故障激励指令内容:策略路径是IceBlade主控设备所在本机策略库里的工程project_rate_change15.prj,动作类型是启动,延迟执行时间是0;第三个故障激励指令内容:策略路径是IceBlade主控设备所在本机策略库里的工程project_rate_change10.prj,动作类型是启动,延迟执行时间是0;第四个故障激励指令内容:策略路径是IceBlade主控设备所在本机策略库里的工程project_rate_change5.prj,动作类型是启动,延迟执行时间是0;第五个故障激励指令内容:策略路径是IceBlade主控设备所在本机策略库里的工程project_rate_change0.prj,动作类型是启动,延迟执行时间是0;第六个故障激励指令内容:策略路径是IceBlade主控设备所在本机策略库里的工程project_rate_change-5.prj,动作类型是启动,延迟执行时间是0;第七个故障激励指令内容:策略路径是IceBlade主控设备所在本机策略库里的工程project_rate_change-10.prj,动作类型是启动,延迟执行时间是0;第八个故障激励指令内容:策略路径是IceBlade主控设备所在本机策略库里的工程project_rate_change-15.prj,动作类型是启动,延迟执行时间是0;第九个故障激励指令内容:策略路径是IceBlade主控设备所在本机策略库里的工程project_rate_change-20.prj,动作类型是启动,延迟执行时间是0;在以上启动指令之后都对应一个相同的停止指令,指令内容:策略路径是空,动作类型是停止,延迟执行时间是0。当IceBlade主控设备接收到并解析出以上指令后,将立即执行。
仿真系统端只需要按图5所示的时间序列设置好任务列表后启动系统即可,如:T1的起始时间定为14:00:00开始,时间段长度为2秒;T2的起始时间定为14:00:10,时间段长度为5秒;T3的起始时间为14:00:20,时间段长度为35秒;T4的起始时间为14:01:00,时间段长度为90秒。IceBlade故障注入系统首先启动远程激励接口的服务,其次启动故障注入设备和主控设备,图6为本发明实施例提供的故障注入的执行故障策略时刻表示意图,在RS232故障注入设备上执行故障策略时刻表如图6所示。故障注入设备将在14:00:12开始执行数据传输错误故障,在14:00:17停止数据传输错误故障,在14:00:20开始执行幅度调节一系列的活动,在14:00:55全部停止,在14:01:00开始执行速率调节一系列活动,在14:02:30全部停止。
举例来说,以测算被测设备的通信速率偏差范围为例,图7为本发明实施例二提供的故障注入的数据流向结构图。如图7所示,本实例以RS232故障注入设备为例,通过在通信总线上侵入的方式,人为的修改通信的速率,以检查被测设备所能适应通信速率的偏差范围。这里外部激励系统A给被测设备B发送指令0xFF 0xAA 0x01,被测设备B会回复0xFF0xBB 0x02。外部激励系统A和被测设备B的通信速率都设置为9600,数据格式都设置为:数据位是8bit,停止位是1bit,无校验位。
IceBlade主控设备编辑故障策略,并保存在策略库中。速率调节”活动编辑,根据硬件的连接,这里“通道选择”设置为通道一,“活动执行类型”设置为非阻塞式,输入波特率为9600,输出波特率偏移为0,保存工程为project_rate_change0.prj。将输出波特率偏移分别改为5%、10%、15%、20%、-5%、-10%、-15%、-20%八组,保存的工程名分别为project_rate_change5.prj、project_rate_change10.prj、project_ratechange15.prj、project_rate_change20.prj、project_rae_change-5.prj、project_rate_change-10.prj、project_rate_change-15.prj、project_rate_change-20.prj。
启动IceBalde故障注入主控设备和RS232故障注入设备,开启远程激励接口服务,同时启动外部激励系统A和被测设备B,外部激励系统开始连续向被测设备发送指令0xFF0xAA 0x01,在没有注入故障时,外部激励系统能接收到被测设备返回的指令0xFF 0xBB0x02,为了检测被测设备B接收数据的速率范围,外部激励系统将分别发送以下故障激励指令:
a)策略路径是IceBlade主控设备所在本机策略库里的工程project_rate_change20.prj,动作类型是启动,延迟执行时间是0;
b)策略路径是IceBlade主控设备所在本机策略库里的工程project_rae_change15.prj,动作类型是启动,延迟执行时间是0;
c)策略路径是IceBlade主控设备所在本机策略库里的工程project_rae_change10.prj,动作类型是启动,延迟执行时间是0;
d)策略路径是IceBlade主控设备所在本机策略库里的工程project_rate_change5.prj,动作类型是启动,延迟执行时间是0;
e)策略路径是IceBlade主控设备所在本机策略库里的工程project_rae_change0.prj,动作类型是启动,延迟执行时间是0;
f)策略路径是IceBlade主控设备所在本机策略库里的工程project_rae_change-5.prj,动作类型是启动,延迟执行时间是0;
g)策略路径是IceBlade主控设备所在本机策略库里的工程project_rate_change-10.prj,动作类型是启动,延迟执行时间是0;
h)策略路径是IceBlade主控设备所在本机策略库里的工程project_rate_change-15.prj,动作类型是启动,延迟执行时间是0;
i)策略路径是IceBlade主控设备所在本机策略库里的工程project_rate_change-20.prj,动作类型是启动,延迟执行时间是0;
RS232故障注入设备执行a)策略时,将输出波特率偏移了20%,即11520,而不再是9600了,如果此时被测设备能回复指令0xFF 0xBB 0x02给外部激励系统A,则可以判断被测设备B具备接收速率偏移20%范围的能力,反之则不具备接收速率偏移20%范围的能力,依次类推,外部激励系统A通过各个策略的执行和比较相应时刻被测设备返回的数据,就能很简单的测试出被测设备接收数据速率的偏差范围。
在上述实施例中,远程激励接口发送端(外部激励系统)的工作流程描述如下:a)在IceBlade主控软件上编辑好故障策略并保存在策略库中;b)与IceBlade主控软件建立连接;c)组织远程激励指令数据;d)发送指令。
图8为本发明实施例提供的远程激励接口接收数据和处理指令流程图,如图8所示,远程激励接口接收端(故障注入系统)的工作流程描述如下:
a)启动远程接口TCP通信服务;
b)接收数据;
c)分析指令,如果为加载工程,则执行d),如果为启动工程e),则执行,如果为停止工程,则执行1);
d)检查延迟执行时间,如果不为0,则等待指定的时间再执行f);
e)检查指令中策略路径是否为空,如果为空,则执行h),如果不为空,则执行f);
f)释放IceBlade主控软件中活动编辑区内所有资源;
g)加载指令中指定的故障策略工程;
h)判断工程是否为空,如果为空,则终止执行;
i)检查故障策略工程的可行性,如果不可行,则终止执行,并报告错误;
j)检查延迟执行时间,如果不为0,则等待指定的时间再继续执行;
k)启动故障策略工程;
l)检查延迟执行时间,如果不为0,则等待指定的时间再继续执行;
m)终止所有故障策略执行序列;
n)清空所有故障。
图9为本发明实施例提供的故障注入系统的结构示意图,如图9所示,本发明实施例提供的故障注入系统包括:主控设备91和故障注入设备92。
主控设备91加载有远程激励接口,主控设备91用于通过所述远程激励接口接收外部激励系统发送的故障激励指令,所述故障激励指令用于指示所要激励执行的故障策略信息;按照所述故障策略信息控制故障注入设备执行相应的故障策略。
故障注入设备92,用于执行相应的故障策略。
本发明实施例中提供的故障注入系统用于执行图3所示方法实施例的技术方案,其实现原理和实现效果类似,此处不再赘述。
进一步地,所述故障策略信息包括:故障策略路径和故障策略执行动作;
主控设备91按照所述故障策略信息控制所述故障注入设备执行相应的故障策略,包括:
根据所述故障策略路径,在故障策略库中查找与所述故障策略路径对应的故障策略;
控制所述故障注入设备按所述故障执行动作执行所述故障策略。
进一步地,所述故障执行动作包括:启动故障策略、加载故障策略和停止故障策略。
进一步地,主控设备91还用于:将故障策略库中的故障策略路径通过所述远程激励接口发送给所述外部激励系统。
进一步地,所述故障策略信息还包括:故障策略延迟时间;
主控设备91控制所述故障注入设备按所述故障执行动作执行所述故障策略,包括:在所述故障策略的延迟时间到达时,所述故障注入系统按所述故障执行动作执行所述故障策略。
图10为本发明实施例一提供的外部激励系统的结构示意图,如图10所示,本发明实施例提供的外部激励系统包括:远程激励接口100,该远程激励接口100包括:确定模块101、生成模块102和远程激励模块103。
确定模块101,用于确定故障策略执行时间序列;
生成模块102,用于根据所述故障策略执行时间序列生成故障激励指令序列;所述故障激励指令序列为在每一个故障策略执行时间段所要发送的故障激励指令所组成的序列;所述故障激励指令用于指示所要激励执行的故障策略信息;
远程激励模块103,用于按照所述故障激励指令序列依次发送对应的故障激励指令给故障注入系统。
本发明实施例中提供的故障注入系统用于执行图3所示方法实施例的技术方案,其实现原理和实现效果类似,此处不再赘述。
进一步地,所述故障激励指令序列包括每一故障策略对应的故障激励指令和该故障激励指令的激励时间;
远程激励模块103按照所述故障激励指令序列依次发送对应的故障激励指令给故障注入系统,包括:远程激励模块103依次在每一个故障激励指令的激励时间,将对应的故障激励指令发送给故障注入系统。
进一步地,在故障策略执行时间段所要发送的故障激励指令为多个时,所述故障激励指令序列还包括故障激励指令的间隔时间;
远程激励模块103按照所述故障激励指令序列依次发送对应的故障激励指令给故障注入系统,包括:所述外部激励系统按照所述故障激励指令的间隔时间,依次将每一个故障激励指令发送给故障注入系统。
图11为本发明实施例二提供的外部激励系统的结构示意图,如图11所示,本发明实施例提供的外部激励系统包括:存储器1101和处理器1102。
存储器1101用于存储执行指令,处理器1102可以是一个中央处理器(CentralProcessing Unit,CPU),或者是特定集成电路(Application Specific IntegratedCircuit,ASIC),或者完成实施本发明实施例的一个或多个集成电路。当外部激励系统运行时,处理器1102与存储器1101之间通信,处理器1102调用执行指令,加载远程激励接口,用于执行图3所示实施例中的故障注入方法。
虽然本发明所揭露的实施方式如上,但所述的内容仅为便于理解本发明而采用的实施方式,并非用以限定本发明。任何本发明所属领域内的技术人员,在不脱离本发明所揭露的精神和范围的前提下,可以在实施的形式及细节上进行任何的修改与变化,但本发明的专利保护范围,仍须以所附的权利要求书所界定的范围为准。

Claims (15)

1.一种故障注入方法,包括:
加载有远程激励接口的故障注入系统通过所述远程激励接口接收外部激励系统发送的故障激励指令,所述故障激励指令用于指示所要激励执行的故障策略信息;
所述故障注入系统按照所述故障策略信息执行相应的故障策略。
2.根据权利要求1所述的故障注入方法,其特征在于,所述故障策略信息包括:故障策略路径和故障策略执行动作;
所述故障注入系统按照所述故障策略信息执行相应的故障策略,包括:
所述故障注入系统根据所述故障策略路径,在故障策略库中查找与所述故障策略路径对应的故障策略;
所述故障注入系统按所述故障执行动作执行所述故障策略;
其中,所述故障执行动作包括:启动故障策略、加载故障策略或停止故障策略。
3.根据权利要求2所述的故障注入方法,其特征在于,所述故障策略信息还包括:故障策略延迟时间;
所述故障注入系统按所述故障执行动作执行所述故障策略,包括:
在所述故障策略的延迟时间到达时,所述故障注入系统再按所述故障执行动作执行所述故障策略。
4.根据权利要求1-3任一项所述的故障注入方法,其特征在于,所述加载有远程激励接口的故障注入系统通过所述远程激励接口接收外部激励系统发送的故障激励指令之前,所述方法还包括:
所述故障注入系统通过所述远程激励接口将故障策略库中的故障策略路径发送给所述外部激励系统。
5.一种故障注入方法,包括:
加载有远程激励接口的外部激励系统确定故障策略执行时间序列;
所述外部激励系统根据所述故障策略执行时间序列生成故障激励指令序列;所述故障激励指令序列为在每一个故障策略执行时间段所要发送的故障激励指令所组成的序列;所述故障激励指令用于指示所要激励执行的故障策略信息;
所述外部激励系统按照所述故障激励指令序列依次通过所述远程激励接口发送对应的故障激励指令给故障注入系统。
6.根据权利要求5所述的故障注入方法,其特征在于,所述故障激励指令序列包括:每一故障策略对应的故障激励指令和该故障激励指令的激励时间;
所述外部激励系统按照所述故障激励指令序列依次通过所述远程激励接口发送对应的故障激励指令给故障注入系统,包括:
所述外部激励系统依次在每一个故障激励指令的激励时间,通过所述远程激励接口将对应的故障激励指令发送给故障注入系统。
7.根据权利要求6所述的故障注入方法,其特征在于,在故障策略执行时间段所要发送的故障激励指令为多个时,所述故障激励指令序列还包括故障激励指令的间隔时间;
所述外部激励系统按照所述故障激励指令序列依次通过所述远程激励接口发送对应的故障激励指令给故障注入系统,包括:
所述外部激励系统按照所述故障激励指令的间隔时间,依次将每一个故障激励指令通过所述远程激励接口发送给故障注入系统。
8.一种故障注入系统,其特征在于,包括:
主控设备,所述主控设备加载有远程激励接口,所述主控设备用于通过所述远程激励接口接收外部激励系统发送的故障激励指令,所述故障激励指令用于指示所要激励执行的故障策略信息;按照所述故障策略信息控制故障注入设备执行相应的故障策略;
所述故障注入设备,用于执行相应的故障策略。
9.根据权利要求8所述的故障注入系统,其特征在于,所述故障策略信息包括:故障策略路径和故障策略执行动作;
所述主控设备按照所述故障策略信息控制所述故障注入设备执行相应的故障策略,包括:
根据所述故障策略路径,在故障策略库中查找与所述故障策略路径对应的故障策略;
控制所述故障注入设备按所述故障执行动作执行所述故障策略;
其中,所述故障执行动作包括:启动故障策略、加载故障策略和停止故障策略;
所述主控设备还用于:将故障策略库中的故障策略路径通过所述远程激励接口发送给所述外部激励系统。
10.根据权利要求9所述的故障注入系统,其特征在于,所述故障策略信息还包括:故障策略延迟时间;
所述主控设备控制所述故障注入设备按所述故障执行动作执行所述故障策略,包括:在所述故障策略的延迟时间到达时,所述故障注入系统按所述故障执行动作执行所述故障策略。
11.一种外部激励系统,其特征在于,包括:远程激励接口,所述远程激励接口包括:
确定模块,用于确定故障策略执行时间序列;
生成模块,用于根据所述故障策略执行时间序列生成故障激励指令序列;所述故障激励指令序列为在每一个故障策略执行时间段所要发送的故障激励指令所组成的序列;所述故障激励指令用于指示所要激励执行的故障策略信息;
远程激励模块,用于按照所述故障激励指令序列依次发送对应的故障激励指令给故障注入系统。
12.根据权利要求11所述的外部激励系统,其特征在于,所述故障激励指令序列包括:每一故障策略对应的故障激励指令和该故障激励指令的激励时间;
所述远程激励模块按照所述故障激励指令序列依次发送对应的故障激励指令给故障注入系统,包括:所述远程激励模块依次在每一个故障激励指令的激励时间,将对应的故障激励指令发送给故障注入系统。
13.根据权利要求12所述的外部激励系统,其特征在于,在故障策略执行时间段所要发送的故障激励指令为多个时,所述故障激励指令序列还包括故障激励指令的间隔时间;
所述远程激励模块按照所述故障激励指令序列依次发送对应的故障激励指令给故障注入系统,包括:所述外部激励系统按照所述故障激励指令的间隔时间,依次将每一个故障激励指令发送给故障注入系统。
14.一种外部激励系统,其特征在于,包括:存储器和处理器,存储器用于存储执行指令;处理器调用所述执行指令,用于执行如权利要求5-7任一项所述的故障注入方法。
15.一种故障注入管理系统,其特征在于,包括如权利要求8-10任一项所述的故障注入系统和如权利要求11-14任一项所述的外部激励系统。
CN201711382436.1A 2017-12-19 2017-12-19 一种故障注入方法、系统及故障注入管理系统 Pending CN108304283A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711382436.1A CN108304283A (zh) 2017-12-19 2017-12-19 一种故障注入方法、系统及故障注入管理系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711382436.1A CN108304283A (zh) 2017-12-19 2017-12-19 一种故障注入方法、系统及故障注入管理系统

Publications (1)

Publication Number Publication Date
CN108304283A true CN108304283A (zh) 2018-07-20

Family

ID=62870313

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711382436.1A Pending CN108304283A (zh) 2017-12-19 2017-12-19 一种故障注入方法、系统及故障注入管理系统

Country Status (1)

Country Link
CN (1) CN108304283A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113157577A (zh) * 2021-04-27 2021-07-23 中国工商银行股份有限公司 一种PaaS云平台故障测试方法及装置
CN115563017A (zh) * 2022-11-10 2023-01-03 成都麟通科技有限公司 一种基于总线注入的测试系统、方法及计算机设备
CN116126738A (zh) * 2023-04-17 2023-05-16 紫金诚征信有限公司 接口异常的识别方法、装置及电子设备

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080133980A1 (en) * 2004-05-11 2008-06-05 International Business Machines Corporation Control system, and program product employing an embedded mechanism for testing a system's fault-handling capability
CN102413005A (zh) * 2010-09-26 2012-04-11 北京旋极信息技术股份有限公司 一种故障注入方法
CN102412909A (zh) * 2010-09-26 2012-04-11 北京旋极信息技术股份有限公司 一种故障注入设备
CN102779104A (zh) * 2011-05-09 2012-11-14 北京旋极信息技术股份有限公司 一种串口数据故障注入方法和装置
CN103001818A (zh) * 2011-09-16 2013-03-27 北京旋极信息技术股份有限公司 一种故障注入方法及系统
CN103580940A (zh) * 2012-07-31 2014-02-12 北京旋极信息技术股份有限公司 一种获取性能信息的方法和系统

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080133980A1 (en) * 2004-05-11 2008-06-05 International Business Machines Corporation Control system, and program product employing an embedded mechanism for testing a system's fault-handling capability
CN102413005A (zh) * 2010-09-26 2012-04-11 北京旋极信息技术股份有限公司 一种故障注入方法
CN102412909A (zh) * 2010-09-26 2012-04-11 北京旋极信息技术股份有限公司 一种故障注入设备
CN102779104A (zh) * 2011-05-09 2012-11-14 北京旋极信息技术股份有限公司 一种串口数据故障注入方法和装置
CN103001818A (zh) * 2011-09-16 2013-03-27 北京旋极信息技术股份有限公司 一种故障注入方法及系统
CN103580940A (zh) * 2012-07-31 2014-02-12 北京旋极信息技术股份有限公司 一种获取性能信息的方法和系统

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113157577A (zh) * 2021-04-27 2021-07-23 中国工商银行股份有限公司 一种PaaS云平台故障测试方法及装置
CN115563017A (zh) * 2022-11-10 2023-01-03 成都麟通科技有限公司 一种基于总线注入的测试系统、方法及计算机设备
CN115563017B (zh) * 2022-11-10 2023-03-24 成都麟通科技有限公司 一种基于总线注入的测试系统、方法及计算机设备
CN116126738A (zh) * 2023-04-17 2023-05-16 紫金诚征信有限公司 接口异常的识别方法、装置及电子设备

Similar Documents

Publication Publication Date Title
US10296685B2 (en) Failure logic modeling method for a high-speed railway train operation control on-board system
CN107704392A (zh) 一种测试用例的处理方法及服务器
CN104636254B (zh) 生成测试用例的方法和装置、测试方法和设备
CN103235593B (zh) 一种基于plc的风机主控硬件自动测试系统及测试方法
CN102932205B (zh) 一种网络服务端接口的自动化测试方法
CN108304283A (zh) 一种故障注入方法、系统及故障注入管理系统
CN104614601B (zh) 一种终端故障定位方法、装置及系统
CN105739417B (zh) 一种运载火箭全箭测发控信息可定制监控的监控系统及其监控方法
CN103580940B (zh) 一种获取性能信息的方法和系统
CN108566313A (zh) 基于硬件在环的列控车载设备互联互通测试接口方法
CN112631932A (zh) 基于接口的自动列车监控系统的子功能独立测试方法
CN113377091B (zh) 运载火箭测发控系统
WO2018201615A1 (zh) 一种电池管理单元的测试方法及系统
CN107608291A (zh) 一种智能变电站应用功能联动规则验证方法及系统
Torens et al. Remotetest: A framework for testing distributed systems
US20130073718A1 (en) Test analysis system of network and analysis method thereof
US20120259611A1 (en) System and method for generation of cim-based power system circuit models
O'Halloran et al. Safety engineering with COTS components
CN106776329B (zh) 储能变流器的调试方法和调试设备
CN103001818B (zh) 一种故障注入方法及系统
CN108804301A (zh) 一种基于事件与故障记录数据的列车控制系统软件测试系统及方法
EP2001159A1 (en) Remote support and testing of equipment
CN115793496B (zh) 一种agv物流系统的调度仿真方法及系统
CN109783295A (zh) 基于配置的测试系统自检软件生成方法及装置
CN114095343A (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
RJ01 Rejection of invention patent application after publication

Application publication date: 20180720

RJ01 Rejection of invention patent application after publication