CN117555778A - 一种航电系统的软件故障注入方法、装置及相关介质 - Google Patents
一种航电系统的软件故障注入方法、装置及相关介质 Download PDFInfo
- Publication number
- CN117555778A CN117555778A CN202311502888.4A CN202311502888A CN117555778A CN 117555778 A CN117555778 A CN 117555778A CN 202311502888 A CN202311502888 A CN 202311502888A CN 117555778 A CN117555778 A CN 117555778A
- Authority
- CN
- China
- Prior art keywords
- fault
- fault injection
- data
- signal
- injection
- 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
- 238000002347 injection Methods 0.000 title claims abstract description 335
- 239000007924 injection Substances 0.000 title claims abstract description 335
- 238000000034 method Methods 0.000 title claims abstract description 53
- 238000004458 analytical method Methods 0.000 claims abstract description 40
- 238000010200 validation analysis Methods 0.000 claims abstract description 9
- 238000012545 processing Methods 0.000 claims description 13
- 238000004590 computer program Methods 0.000 claims description 10
- 238000007405 data analysis Methods 0.000 claims description 6
- 238000013507 mapping Methods 0.000 claims description 6
- 238000012986 modification Methods 0.000 claims description 6
- 230000004048 modification Effects 0.000 claims description 6
- 230000008713 feedback mechanism Effects 0.000 claims description 5
- 230000008859 change Effects 0.000 claims description 4
- 230000000694 effects Effects 0.000 claims description 4
- 230000003213 activating effect Effects 0.000 claims description 3
- 230000001427 coherent effect Effects 0.000 claims description 3
- 239000000203 mixture Substances 0.000 claims description 3
- 238000012360 testing method Methods 0.000 abstract description 25
- 230000008569 process Effects 0.000 description 14
- 230000009471 action Effects 0.000 description 6
- 238000004422 calculation algorithm Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 5
- 238000012795 verification Methods 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 230000010354 integration Effects 0.000 description 4
- 238000007726 management method Methods 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 238000007667 floating Methods 0.000 description 3
- 230000006872 improvement Effects 0.000 description 3
- 230000002159 abnormal effect Effects 0.000 description 2
- 238000009825 accumulation Methods 0.000 description 2
- 230000004913 activation Effects 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000011156 evaluation Methods 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 238000003909 pattern recognition Methods 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 239000000243 solution Substances 0.000 description 2
- 230000005856 abnormality Effects 0.000 description 1
- 239000008186 active pharmaceutical agent Substances 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 210000000078 claw Anatomy 0.000 description 1
- 238000013496 data integrity verification Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000035772 mutation Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000009897 systematic effect Effects 0.000 description 1
- 238000012731 temporal analysis Methods 0.000 description 1
- 238000000700 time series analysis Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3688—Test management for test execution, e.g. scheduling of test suites
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
Abstract
本发明公开了一种航电系统的软件故障注入方法、装置及相关介质,该方法包括初始化故障数据库,得到故障注入信号数据;利用故障注入信号数据编辑生成故障注入操作流;配置故障注入信号组对应故障注入目标平台的生效规则,得到故障注入控制流;向故障注入目标平台发送故障信号订阅请求并接收故障信号;利用故障解析器解析故障信号,得到故障解析数据;基于故障解析数据利用故障注入控制流向故障注入目标平台注入故障注入操作流。本发明通过基于解析后的故障解析数据利用故障注入控制流向故障注入目标平台注入故障注入操作流,如此,既能灵活适应不同硬件平台,又能全面覆盖软硬件信号,大大提高了故障注入测试效率和准确性。
Description
技术领域
本发明涉及航电系统技术领域,特别涉及一种航电系统的软件故障注入方法、装置及相关介质。
背景技术
随着电动航空领域的发展,故障注入技术主要分为硬件故障注入和软件故障注入。在软件故障注入方面,一种常见的做法是在软件编译前通过静态代码插桩来注入故障,这要求在代码编写阶段就预设故障情况,并在测试后删除插桩代码。尽管这种方法能够在不影响硬件的情况下测试软件的故障处理逻辑,但其效率通常较低,尤其是在需要覆盖大量信号时。
现有技术中也存在一些软件故障注入方法,但均各自存在局限性。例如,通过软件直接控制硬件管脚来实现故障注入,这种方法受限于特定的硬件平台,缺乏灵活性。此外,依赖硬件环境的故障注入方法不能全面覆盖系统内部的状态信号,从而无法完整测试系统内部软件的故障处理能力。
动态故障注入作为一种新兴技术,旨在解决上述问题,它基于软件系统的真实运行工况,动态地在运行中注入故障,以更真实地模拟故障情况并测试系统响应。因此,目前亟待一种既能灵活适应不同硬件平台,又能全面覆盖软硬件信号、提高故障注入测试效率和准确性的动态故障注入方法。
发明内容
本发明实施例提供了一种航电系统的软件故障注入方法、装置及相关介质,旨在解决现有技术中的故障注入测试效率和准确性低下的问题。
第一方面,本发明实施例提供一种航电系统的软件故障注入方法,包括:
初始化故障数据库,得到故障注入信号数据;
利用所述故障注入信号数据编辑生成对应故障注入目标平台的故障注入操作流;
编辑故障注入信号组并配置所述故障注入信号组对应所述故障注入目标平台的生效规则,得到故障注入控制流;
向所述故障注入目标平台发送故障信号订阅请求,并接收所述故障注入目标平台返回的故障信号;
利用故障解析器解析所述故障信号,得到故障解析数据;
基于所述故障解析数据利用所述故障注入控制流向所述故障注入目标平台注入所述故障注入操作流,同时返回所述故障注入目标平台的执行结果。
第二方面,本发明实施例提供一种航电系统的软件故障注入装置,包括:
数据初始单元,用于初始化故障数据库,得到故障注入信号数据;
数据生成单元,用于利用所述故障注入信号数据编辑生成对应故障注入目标平台的故障注入操作流;
数据配置单元,用于编辑故障注入信号组并配置所述故障注入信号组对应所述故障注入目标平台的生效规则,得到故障注入控制流;
数据订阅单元,用于向所述故障注入目标平台发送故障信号订阅请求,并接收所述故障注入目标平台返回的故障信号;
数据解析单元,用于利用故障解析器解析所述故障信号,得到故障解析数据;
数据注入单元,用于基于所述故障解析数据利用所述故障注入控制流向所述故障注入目标平台注入所述故障注入操作流,同时返回所述故障注入目标平台的执行结果。
第三方面,本发明实施例提供了一种计算机设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现所述第一方面的航电系统的软件故障注入方法。
第四方面,本发明实施例提供了一种计算机可读存储介质,其中,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现所述第一方面的航电系统的软件故障注入方法。
本发明实施例提供一种航电系统的软件故障注入方法,包括初始化故障数据库,得到故障注入信号数据;利用故障注入信号数据编辑生成故障注入操作流;配置故障注入信号组对应故障注入目标平台的生效规则,得到故障注入控制流;向故障注入目标平台发送故障信号订阅请求并接收故障信号;利用故障解析器解析故障信号,得到故障解析数据;基于故障解析数据利用故障注入控制流向故障注入目标平台注入故障注入操作流。本发明通过基于解析后的故障解析数据利用故障注入控制流向故障注入目标平台注入故障注入操作流,如此,既能灵活适应不同硬件平台,又能全面覆盖软硬件信号,大大提高了故障注入测试效率和准确性。
本发明实施例还提供一种航电系统的软件故障注入装置、计算机设备和存储介质,同样具有上述有益效果。
附图说明
为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种航电系统的软件故障注入方法的流程示意图;
图2为本发明实施例提供的一种航电系统的软件故障注入方法的另一流程示意图;
图3为本发明实施例提供的故障数据库组成结构图;
图4为本发明实施例提供的一种航电系统的软件故障注入方法的应用示例图;
图5为本发明实施例提供的一种航电系统的软件故障注入装置的示意性框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当进一步理解,在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
下面请参见图1,图1为本发明实施例提供的一种航电系统的软件故障注入方法的流程示意图,具体包括:步骤S101~S106。
S101、初始化故障数据库,得到故障注入信号数据;
S102、利用所述故障注入信号数据编辑生成对应故障注入目标平台的故障注入操作流;
S103、编辑故障注入信号组并配置所述故障注入信号组对应所述故障注入目标平台的生效规则,得到故障注入控制流;
S104、向所述故障注入目标平台发送故障信号订阅请求,并接收所述故障注入目标平台返回的故障信号;
S105、利用故障解析器解析所述故障信号,得到故障解析数据;
S106、基于所述故障解析数据利用所述故障注入控制流向所述故障注入目标平台注入所述故障注入操作流,同时返回所述故障注入目标平台的执行结果。
结合图2所示,在步骤S101中,初始化一个故障数据库,故障数据库包含了各类预定义的故障模式和参数;故障数据库会影响航电系统的各种潜在故障模式,包括但不限于传感器失效、通信故障、数据处理错误等。为每种故障模式设定具体的参数,这些参数描述了故障的特征,如故障持续时间、影响范围、故障强度等。将上述故障模式及其参数输入到故障数据库中,并对数据库进行结构化管理,以便快速检索和更新。基于故障数据库中的数据,结合故障注入目标平台的具体硬件和软件配置,动态生成适配的故障注入信号数据。
结合图3所示,在一实施例中,所述步骤S101,包括:
对航电系统的设备及传感器相对应的IP信号、作动器信号和内部控制软件信号进行分类,汇总得到多个分类信号数据;
基于所述故障注入目标平台的硬件组成,选取对应的所述分类信号数据,并为所述分类信号数据设定故障参数;
将设定好的故障参数存入所述故障数据库中,得到所述故障注入信号数据。
在本实施例中,对航电系统的设备及传感器相关的输入信号(IP信号)、作动器信号(OP信号)和内部控制软件信号(CLAW信号)进行分类,形成一个结构化的信号数据集;分析目标平台的硬件构成,包括CPU、FPGA、RAM等组件,以选取与之对应的分类信号数据;为所选取的信号数据设定故障参数,这些参数描述了故障的特征,如持续时间、强度和影响范围等;将定义好的故障参数存储于故障数据库中,生成故障注入信号数据,用于后续的测试和验证。
具体的,首先操作人员通过用户界面进行交互,可以定义和分类信号数据。随后,系统自动分析目标平台的硬件组成,为操作人员提供推荐的信号数据选项,通过用户指导算法,故障参数的设定变得简单直观,同时,系统确保所有故障参数的一致性和准确性。完成这些步骤后,故障数据库初始化完毕,测试工程师便可以利用该数据库进行高效的故障注入测试。此外,本发明还可集成机器学习和数据分析工具,以优化故障参数的设定,并预测故障注入的可能后果。这一智能化的方法提升了测试的有效性,减少了对实际系统的潜在风险。通过这种方式,本发明不仅增强了故障注入测试的安全性,还提高了测试过程的效率和准确性。
在步骤S102中,需要从故障数据库中读取预先定义的故障信号数据,故障信号数据包括了故障类型、预期影响、故障触发条件和故障持续时间等参数。操作人员将使用专用的编辑工具或软件来构建故障注入操作流。在编辑操作流的过程中,需要对故障参数进行微调,以适应故障注入目标平台的实际反应;如调整故障触发的阈值或修改故障的持续时间,以更贴近真实世界中的故障表现。
在一实施例中,所述步骤S102,包括:
获取所述故障注入目标平台的数据类型;其中,所述数据类型包括基本型数据、二进制型数据和bool型数据;
对所述基本型数据进行编辑替换操作以改变原始信号值,或者进行编辑累加操作以在原始信号值上增加预定值;
对所述二进制型数据进行编辑位与操作或者位或操作以模拟硬件级别的故障;
对所述bool型数据进行编辑使能操作或者禁用操作以反映逻辑控制信号的故障状态;
基于故障注入逻辑顺序将编辑后的所述基本型数据、二进制型数据和bool型数据整合成一个连贯的操作流,得到所述故障注入操作流。
在本实施例中,系统需要识别故障注入目标平台支持的数据类型,包括基本型数据(如整型和浮点型)、二进制型数据以及bool型数据,识别步骤通常通过分析故障注入目标平台的软件接口文档或直接与故障注入目标平台通信来完成。对于基本型数据(如uint8、int8、uint16、int16、uint32、int32、float、double型等),本发明提供了两种编辑操作:
替换操作:通过用户界面或自动化脚本,操作人员可以指定新的信号值来替换现有的原始信号值;
累加操作:系统将在原始信号值的基础上增加一个预定值,用于模拟信号值随时间逐渐偏移的故障。
对于二进制型数据,本发明提供了两种编辑操作:
位与操作:系统将原始信号值与特定的二进制掩码进行逻辑与操作,用于模拟硬件故障导致某些位永久置0的情况;
位或操作:通过逻辑或操作,可以模拟由故障导致的位永久置1的场景;
对于bool型数据,本发明提供了两种编辑操作:
使能操作:系统将bool型信号设置为true,用于模拟开关型控制信号的激活状态;
禁用操作:相反,将bool型信号设置为false,以反映关闭或失效的状态。
经过以上编辑后,系统需要根据故障注入的逻辑顺序,将所有编辑过的信号整合成一个连续的故障注入操作流,这一整合过程考虑了故障发生的先后顺序和相互依赖关系,以确保故障注入操作流能够准确地模拟故障的实际表现。为了提高故障注入操作流的精确度和可靠性,系统可以引入先进的模拟工具,以数字双胞胎技术为基础,创建目标平台的虚拟副本,允许在不影响实际运行平台的情况下,对故障注入操作流进行全面的测试和验证。通过上述步骤,可以生成一个精确、高效且反映真实故障状态的故障注入操作流,该方法不仅增强了测试流程的真实性,还提高了故障注入测试的安全性和效率,为航电系统软件的可靠性评估提供了有力的技术支持。
在步骤S103中,操作人员需要编辑故障注入信号组,这包括对信号进行分组,每组信号模拟一种或一系列相关的故障场景;指定或编辑每个信号的特定属性,如故障值、持续时间和触发条件。随后,需要为每组故障信号设定生效规则,包括制定每个信号或信号组的生效时刻,以及它们之间的相互依赖关系;配置条件触发规则,以确定在故障注入目标平台的特定操作状态下故障注入信号组的激活。接下来,将编辑好的故障注入信号组和配置好的生效规则整合成故障注入控制流,具体步骤包括:使用流程图或类似工具来可视化故障注入信号组和生效规则之间的关系;在模拟环境中运行故障注入控制流,以验证其逻辑和效果;调整和优化故障注入信号组,确保其准确性和高效性。
在一实施例中,所述步骤S103,包括:
创建所述故障注入信号组;
编辑所述故障注入信号组的注入操作;其中所述注入操作包括信号值修改和信号状态切换;
对编辑完成后的所述故障注入信号组配置生效规则,以当所述故障注入信号组满足生效条件时自动生效;
整合所述故障注入信号组,得到所述故障注入控制流。
在本实施例中,首先识别航电系统中关键的信号和潜在的故障点;根据系统的实际工作原理和测试目标,选择或定义一系列故障信号;再将这些信号组合成一个故障注入信号组,以便于集中管理和操作。接下来,针对所创建的故障注入信号组,编辑注入操作。编辑注入操作包含:对信号值进行修改,例如设定异常值或根据特定算法生成随机值;编辑信号状态切换操作,如从正常状态到故障状态的转变;设计操作流程,确保注入操作可以准确反映预期的故障模式。编辑完成后,需为故障注入信号组配置生效规则:设定生效条件,例如特定时间、特定事件发生或系统状态符合预设条件;使用条件表达式或逻辑触发器定义生效逻辑,确保故障注入信号组在满足条件时自动激活;最后整合配置好的故障注入信号组,生成故障注入控制流。本实施方式提供了一种全面且灵活的故障注入方法,可以适应不同的测试需求和平台。通过编辑、配置和整合过程,确保了故障注入测试的准确性和有效性。
结合图4所示,在步骤S104中,首先,通信单元(如图4所示)将发送故障信号订阅请求到目标平台,具体为:定义订阅请求的格式和内容,包括请求的故障类型和所需的信号参数;使用通信协议(如TCP/IP、CAN总线等)将订阅请求从通信单元发送到故障注入目标平台;确保发送过程中的数据安全和完整性;一旦故障注入目标平台收到订阅请求,其将按照请求的参数返回故障信号。进一步的,为提升故障信号管理的效率和智能化水平,可以集成先进的数据处理算法,如流式处理和事件驱动架构,以实时处理和响应故障信号;开发基于云的故障信号管理系统,允许从任何地点和设备访问和管理故障信号;引入机器学习技术,对故障信号进行模式识别和预测分析,从而自动优化故障订阅请求。
在步骤S105中,故障解析器是一个软件工具或模块,故障解析器读取并识别不同类型的故障信号数据,根据预定义的规则和算法,对故障信号数据进行解码,从原始故障信号中提取出故障特征和相关参数。故障解析器接收到故障注入目标平台返回的故障信号之后,需要对故障信号进行解析:将接收到的故障信号加载到故障解析器中;运行故障解析器,使用数据分析技术,比如模式识别和时间序列分析,以确保精确解析;解析过程中,故障解析器会识别出故障信号的特定特征,如幅度突变、频率偏移或波形畸变;根据解析出的特征,生成故障信号特征数据。
在一实施例中,所述步骤S105,包括:
利用所述故障解析器对接收的所述故障信号进行解析识别所述故障信号的特征,得到故障信号特征数据;
根据所述故障信号特征数据映射所述故障信号到相应的所述故障注入目标平台;
验证所述故障信号特征数据与所述故障注入目标平台的故障处理逻辑是否一致,若故障处理逻辑不一致,则调整所述故障信号并再次进行解析;若故障处理逻辑一致,则将所述故障信号特征数据存储至所述故障数据库,得到所述故障解析数据。
在本实施例中,故障信号接收后,故障解析器将被触发以开始解析流程,通过算法和逻辑分析,故障解析器识别出故障信号中的异常特征,如意外的信号跳变、周期性的异常或不规则的噪声模式;每个识别出的特征被编码为故障信号特征数据,准备用于后续的映射和验证步骤。故障信号特征数据根据目标平台的特定要求进行映射,以确保数据格式和协议符合平台标准;映射完成后,进行一致性验证,以比较故障信号特征数据与目标平台的故障处理逻辑。若发现不一致,故障解析器将调整故障信号,包括修改信号参数或改变信号传递的逻辑,并重新执行解析流程。如果验证通过,表明故障信号特征数据与故障注入目标平台逻辑一致,那么这些数据将被存储到故障数据库中。故障信号特征数据的存储步骤包括:在故障数据库中预留足够空间以存储解析后的数据;使用加密和数据完整性校验技术确保存储过程的安全性;将故障信号特征数据与故障模型和预期响应关联,以便在将来的测试中快速检索和使用。
具体的,故障信号的数值类型有以下几种:
PHY32:32位物理量,可被描述成一个连续的单精度浮点数据;
PHY64:64位物理量,可被描述成一个双精度浮点数;
BIN:二进制量,信号可以被描述成一个二进制数据;
ENUM:枚举量,信号可以被描述成一些类枚举值;
BOOL:逻辑量,该型号的数据类型只能是bool;
对于PHY32或者PHY64数值类型的额外信号属性,只有数值类型为PHY32或者PHY64的数据才具有该属性,该属性的具体内容有:factor、offset、unit;其中,物理值=原始值*factor+offset。
在步骤S106中,将生成的故障注入操作流与故障注入控制流进行同步,以便在适当的时刻触发预定的故障。在故障注入控制流中设置条件和触发器,这些条件和触发器基于故障注入目标平台的实时状态和预先设定的故障注入策略。在故障注入过程中,实时监控故障注入目标平台(对应图4中的注入过程显示单元),以确保故障注入控制流的有效执行。对返回执行结果进行分析,对比预期的故障影响,确认故障注入的成功与否。如果结果与预期不符,调整故障注入参数或策略,并重新执行故障注入测试(对应图4中的注入结果评价单元)。
在一实施例中,所述步骤S106,包括:
检索所述故障数据库中所述故障解析数据,并读取所需的所述故障解析数据;
激活所述故障注入控制流,并将读取到的所述故障解析数据写入到激活后的所述故障注入控制流;
通过控制所述故障注入控制流将所述故障注入操作流注入到所述故障注入目标平台中。
在本实施例中,需要从故障数据库中检索特定的故障解析数据,使用数据库查询语言或界面,如SQL或特定的API,以识别和选择所需的故障解析数据;确保读取的数据包括故障的类型、预期行为、影响范围和必要的参数;随后,利用系统中的控制软件或脚本来启动故障注入控制流程;将读取到的故障解析数据加载到故障注入控制流中,确保每项数据与相应的故障注入步骤正确关联。具体的执行故障注入操作流为:根据故障注入控制流中定义的逻辑,逐步执行故障注入操作,包括软件层面的异常注入、硬件接口的操作或系统配置的更改;实时监控故障注入过程,确保每个步骤都按预定的参数和条件执行。
在一实施例中,所述步骤S106,还包括:
创建故障注入反馈机制,以捕捉所述故障注入目标平台的当前系统状态,得到系统状态数据;
接收所述系统状态数据并结合所述执行结果,生成故障注入综合报告。
在本实施例中,建立故障注入反馈机制的步骤包括:配置故障注入目标平台上的监控工具和传感器,以实时捕捉系统状态数据,如CPU使用率、内存占用、温度读数等;开发或配置软件模块来自动收集这些系统状态数据,并将其标准化为统一格式。收集到的系统状态数据将按以下方式处理:实时或定期的从故障注入目标平台中传输系统状态数据到系统;保证数据传输过程中的安全性和准确性。结合系统状态数据和执行结果生成故障注入综合报告,具体为,利用分析软件对收集到的数据进行深入分析,识别可能的模式和异常;将分析结果与故障注入的执行结果相结合,评估故障注入的影响和系统的响应;生成包括故障注入详情、系统性能指标和推荐行动的综合报告。为增强实施方式的效果,还可以整合大数据分析和人工智能算法,以更智能地处理和解释收集到的系统状态数据,使用云服务来支持大规模数据存储、处理和远程访问报告,开发动态反馈系统,该系统不仅提供历史数据的分析,还能实时预测未来可能的系统行为和故障趋势。
综上所述,在航电系统的软件故障注入方法的准备阶段,需从维护良好的故障数据库中检索与故障相关的数据,这些数据代表了各种可能影响航电系统运行的预定义故障模式。随后,故障注入控制流被配置和激活,根据检索到的故障解析数据,将特定的故障注入操作流程预设进系统,这些操作流程设计用来模拟实际操作环境中可能发生的故障,并为后续的测试执行阶段做好准备。在测试执行阶段,故障注入控制流根据预设条件触发故障注入操作流。故障注入操作流包括信号值的修改、系统状态的切换等一系列动作,这些动作精确模拟了故障场景的发生。为了确保故障注入的精度和有效性,故障注入过程中的系统状态被实时监控,捕捉到的系统状态数据被用来评估故障注入的即时影响。最后,在测试反馈阶段,故障注入结果被综合分析。系统状态数据与故障注入的执行结果一起被用来生成综合报告,该报告详细描述了故障注入的过程、系统的响应以及推荐的改进措施。通过这一反馈机制,能够对航电系统的容错能力有一个全面的评估,并据此优化系统的设计和性能。这种航电系统的软件故障注入方法通过结构化的数据检索、精确的故障模拟和深入的结果分析,为航电系统的测试和评估提供了一个全面、系统的解决方案。
结合图5所示,图5为本发明实施例提供的一种航电系统的软件故障注入装置的示意性框图,航电系统的软件故障注入装置500,包括:
数据初始单元501,用于初始化故障数据库,得到故障注入信号数据;
数据生成单元502,用于利用所述故障注入信号数据编辑生成对应故障注入目标平台的故障注入操作流;
数据配置单元503,用于编辑故障注入信号组并配置所述故障注入信号组对应所述故障注入目标平台的生效规则,得到故障注入控制流;
数据订阅单元504,用于向所述故障注入目标平台发送故障信号订阅请求,并接收所述故障注入目标平台返回的故障信号;
数据解析单元505,用于利用故障解析器解析所述故障信号,得到故障解析数据;
数据注入单元506,用于基于所述故障解析数据利用所述故障注入控制流向所述故障注入目标平台注入所述故障注入操作流,同时返回所述故障注入目标平台的执行结果。
在本实施例中,数据初始单元501初始化故障数据库,得到故障注入信号数据;数据生成单元502利用所述故障注入信号数据编辑生成对应故障注入目标平台的故障注入操作流;数据配置单元503编辑故障注入信号组并配置所述故障注入信号组对应所述故障注入目标平台的生效规则,得到故障注入控制流;数据订阅单元504向所述故障注入目标平台发送故障信号订阅请求,并接收所述故障注入目标平台返回的故障信号;数据解析单元505利用故障解析器解析所述故障信号,得到故障解析数据;数据注入单元506基于所述故障解析数据利用所述故障注入控制流向所述故障注入目标平台注入所述故障注入操作流,同时返回所述故障注入目标平台的执行结果。
在一实施例中,所述数据生成单元502,包括:
类型获取单元,用于获取所述故障注入目标平台的数据类型;其中,所述数据类型包括基本型数据、二进制型数据和bool型数据;
第一编辑单元,用于对所述基本型数据进行编辑替换操作以改变原始信号值,或者进行编辑累加操作以在原始信号值上增加预定值;
第二编辑单元,用于对所述二进制型数据进行编辑位与操作或者位或操作以模拟硬件级别的故障;
第三编辑单元,用于对所述bool型数据进行编辑使能操作或者禁用操作以反映逻辑控制信号的故障状态;
数据整合单元,用于基于故障注入逻辑顺序将编辑后的所述基本型数据、二进制型数据和bool型数据整合成一个连贯的操作流,得到所述故障注入操作流。
在一实施例中,所述数据配置单元503,包括:
信号创建单元,用于创建所述故障注入信号组;
信号编辑单元,用于编辑所述故障注入信号组的注入操作;其中所述注入操作包括信号值修改和信号状态切换;
信号配置单元,用于对编辑完成后的所述故障注入信号组配置生效规则,以当所述故障注入信号组满足生效条件时自动生效;
信号整合单元,用于整合所述故障注入信号组,得到所述故障注入控制流。
在一实施例中,所述数据解析单元505,包括:
信号解析单元,用于利用所述故障解析器对接收的所述故障信号进行解析识别所述故障信号的特征,得到故障信号特征数据;
信号映射单元,用于根据所述故障信号特征数据映射所述故障信号到相应的所述故障注入目标平台;
信号判断单元,用于验证所述故障信号特征数据与所述故障注入目标平台的故障处理逻辑是否一致,若故障处理逻辑不一致,则调整所述故障信号并再次进行解析;若故障处理逻辑一致,则将所述故障信号特征数据存储至所述故障数据库,得到所述故障解析数据。
在一实施例中,所述数据注入单元506,包括:
故障解析单元,用于检索所述故障数据库中所述故障解析数据,并读取所需的所述故障解析数据;
故障读取单元,用于激活所述故障注入控制流,并将读取到的所述故障解析数据写入到激活后的所述故障注入控制流;
故障注入单元,用于通过控制所述故障注入控制流将所述故障注入操作流注入到所述故障注入目标平台中。
在一实施例中,所述数据注入单元506,还包括:
机制创建单元,用于创建故障注入反馈机制,以捕捉所述故障注入目标平台的当前系统状态,得到系统状态数据;
结果返回单元,用于接收所述系统状态数据并结合所述执行结果,生成故障注入综合报告。
由于装置部分的实施例与方法部分的实施例相互对应,因此装置部分的实施例请参见方法部分的实施例的描述,这里暂不赘述。
本发明实施例还提供了一种计算机可读存储介质,其上存有计算机程序,该计算机程序被执行时可以实现上述实施例所提供的步骤。该存储介质可以包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本发明实施例还提供了一种计算机设备,可以包括存储器和处理器,存储器中存有计算机程序,处理器调用存储器中的计算机程序时,可以实现上述实施例所提供的步骤。当然计算机设备还可以包括各种网络接口,电源等组件。
说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的状况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
Claims (10)
1.一种航电系统的软件故障注入方法,其特征在于,包括:
初始化故障数据库,得到故障注入信号数据;
利用所述故障注入信号数据编辑生成对应故障注入目标平台的故障注入操作流;
编辑故障注入信号组并配置所述故障注入信号组对应所述故障注入目标平台的生效规则,得到故障注入控制流;
向所述故障注入目标平台发送故障信号订阅请求,并接收所述故障注入目标平台返回的故障信号;
利用故障解析器解析所述故障信号,得到故障解析数据;
基于所述故障解析数据利用所述故障注入控制流向所述故障注入目标平台注入所述故障注入操作流,同时返回所述故障注入目标平台的执行结果。
2.根据权利要求1所述的航电系统的软件故障注入方法,其特征在于,所述初始化故障数据库,得到故障注入信号数据,包括:
对航电系统的设备及传感器相对应的IP信号、作动器信号和内部控制软件信号进行分类,汇总得到多个分类信号数据;
基于所述故障注入目标平台的硬件组成,选取对应的所述分类信号数据,并为所述分类信号数据设定故障参数;
将设定好的故障参数存入所述故障数据库中,得到所述故障注入信号数据。
3.根据权利要求1所述的航电系统的软件故障注入方法,其特征在于,所述利用所述故障注入信号数据编辑生成对应故障注入目标平台的故障注入操作流,包括:
获取所述故障注入目标平台的数据类型;其中,所述数据类型包括基本型数据、二进制型数据和bool型数据;
对所述基本型数据进行编辑替换操作以改变原始信号值,或者进行编辑累加操作以在原始信号值上增加预定值;
对所述二进制型数据进行编辑位与操作或者位或操作以模拟硬件级别的故障;
对所述bool型数据进行编辑使能操作或者禁用操作以反映逻辑控制信号的故障状态;
基于故障注入逻辑顺序将编辑后的所述基本型数据、二进制型数据和bool型数据整合成一个连贯的操作流,得到所述故障注入操作流。
4.根据权利要求1所述的航电系统的软件故障注入方法,其特征在于,所述编辑故障注入信号组并配置所述故障注入信号组对应所述故障注入目标平台的生效规则,得到故障注入控制流,包括:
创建所述故障注入信号组;
编辑所述故障注入信号组的注入操作;其中所述注入操作包括信号值修改和信号状态切换;
对编辑完成后的所述故障注入信号组配置生效规则,以当所述故障注入信号组满足生效条件时自动生效;
整合所述故障注入信号组,得到所述故障注入控制流。
5.根据权利要求1所述的航电系统的软件故障注入方法,其特征在于,所述利用故障解析器解析所述故障信号,得到故障解析数据,包括:
利用所述故障解析器对接收的所述故障信号进行解析识别所述故障信号的特征,得到故障信号特征数据;
根据所述故障信号特征数据映射所述故障信号到相应的所述故障注入目标平台;
验证所述故障信号特征数据与所述故障注入目标平台的故障处理逻辑是否一致,若故障处理逻辑不一致,则调整所述故障信号并再次进行解析;若故障处理逻辑一致,则将所述故障信号特征数据存储至所述故障数据库,得到所述故障解析数据。
6.根据权利要求1所述的航电系统的软件故障注入方法,其特征在于,所述基于所述故障解析数据利用所述故障注入控制流向所述故障注入目标平台注入所述故障注入操作流,包括:
检索所述故障数据库中所述故障解析数据,并读取所需的所述故障解析数据;
激活所述故障注入控制流,并将读取到的所述故障解析数据写入到激活后的所述故障注入控制流;
通过控制所述故障注入控制流将所述故障注入操作流注入到所述故障注入目标平台中。
7.根据权利要求1所述的航电系统的软件故障注入方法,其特征在于,所述返回所述故障注入目标平台的执行结果,包括:
创建故障注入反馈机制,以捕捉所述故障注入目标平台的当前系统状态,得到系统状态数据;
接收所述系统状态数据并结合所述执行结果,生成故障注入综合报告。
8.一种航电系统的软件故障注入装置,其特征在于,包括:
数据初始单元,用于初始化故障数据库,得到故障注入信号数据;
数据生成单元,用于利用所述故障注入信号数据编辑生成对应故障注入目标平台的故障注入操作流;
数据配置单元,用于编辑故障注入信号组并配置所述故障注入信号组对应所述故障注入目标平台的生效规则,得到故障注入控制流;
数据订阅单元,用于向所述故障注入目标平台发送故障信号订阅请求,并接收所述故障注入目标平台返回的故障信号;
数据解析单元,用于利用故障解析器解析所述故障信号,得到故障解析数据;
数据注入单元,用于基于所述故障解析数据利用所述故障注入控制流向所述故障注入目标平台注入所述故障注入操作流,同时返回所述故障注入目标平台的执行结果。
9.一种计算机设备,其特征在于,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如权利要求1-7任一项所述的航电系统的软件故障注入方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1-7任一项所述的航电系统的软件故障注入方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311502888.4A CN117555778A (zh) | 2023-11-13 | 2023-11-13 | 一种航电系统的软件故障注入方法、装置及相关介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311502888.4A CN117555778A (zh) | 2023-11-13 | 2023-11-13 | 一种航电系统的软件故障注入方法、装置及相关介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117555778A true CN117555778A (zh) | 2024-02-13 |
Family
ID=89815870
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311502888.4A Pending CN117555778A (zh) | 2023-11-13 | 2023-11-13 | 一种航电系统的软件故障注入方法、装置及相关介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117555778A (zh) |
-
2023
- 2023-11-13 CN CN202311502888.4A patent/CN117555778A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109739755B (zh) | 一种基于程序追踪和混合执行的模糊测试系统 | |
US6385765B1 (en) | Specification and verification for concurrent systems with graphical and textual editors | |
Lo et al. | SMArTIC: Towards building an accurate, robust and scalable specification miner | |
KR101132560B1 (ko) | 로봇 소프트웨어 컴포넌트를 위한 시뮬레이션 기반 인터페이스 테스팅 자동화 시스템 및 그 방법 | |
CN111108481B (zh) | 故障分析方法及相关设备 | |
CN112052172B (zh) | 第三方通道的快速测试方法、装置和电子设备 | |
Kormann et al. | Automated test case generation approach for PLC control software exception handling using fault injection | |
CN110188036A (zh) | 一种软件测试方法及装置 | |
CN111190827A (zh) | 接口自动化测试方法、装置、存储介质及电子设备 | |
CN118035100B (zh) | 一种大模型增强的测试想定智能设计方法 | |
US11163924B2 (en) | Identification of changes in functional behavior and runtime behavior of a system during maintenance cycles | |
US11593076B2 (en) | Method for merging architecture data | |
US20230359746A1 (en) | Systems and methods for shift left testing | |
Ozawa et al. | How do software metrics affect test case prioritization? | |
Campos et al. | Pattern-based analysis of automated production systems | |
CN117555778A (zh) | 一种航电系统的软件故障注入方法、装置及相关介质 | |
EP4148584A1 (en) | Method and system for generating and optimizing test cases for an engineering program | |
US20100191710A1 (en) | Network Meta-Data Libraries And Related Methods | |
Tadano et al. | Automatic synthesis of SRN models from system operation templates for availability analysis | |
Mund et al. | Model-based availability analysis for automated production systems: a case study | |
CN117435507B (zh) | 自适应通用退避测试方法及系统 | |
CN117234765B (zh) | 一种国产操作系统内核性能下降补丁自动二分定位方法 | |
EP4231204A1 (en) | System for developing and running applications in hybrid quantum computing networks | |
Morel et al. | Proof-oriented fault-tolerant systems engineering: rationales, experiments and open issues | |
CN118227421A (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 |