CN116300836B - 发动机控制系统的测试方法和装置 - Google Patents
发动机控制系统的测试方法和装置 Download PDFInfo
- Publication number
- CN116300836B CN116300836B CN202310569352.8A CN202310569352A CN116300836B CN 116300836 B CN116300836 B CN 116300836B CN 202310569352 A CN202310569352 A CN 202310569352A CN 116300836 B CN116300836 B CN 116300836B
- Authority
- CN
- China
- Prior art keywords
- test
- node
- root node
- child
- control system
- 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.)
- Active
Links
- 238000010998 test method Methods 0.000 title claims abstract description 22
- 238000012360 testing method Methods 0.000 claims abstract description 406
- 230000002159 abnormal effect Effects 0.000 claims abstract description 67
- 238000000034 method Methods 0.000 claims abstract description 24
- 230000004044 response Effects 0.000 claims abstract description 14
- 230000000875 corresponding effect Effects 0.000 claims description 35
- 230000008569 process Effects 0.000 claims description 16
- 239000013598 vector Substances 0.000 claims description 16
- 238000002347 injection Methods 0.000 claims description 14
- 239000007924 injection Substances 0.000 claims description 14
- 239000004973 liquid crystal related substance Substances 0.000 claims description 12
- 239000000446 fuel Substances 0.000 claims description 11
- 230000002596 correlated effect Effects 0.000 claims description 6
- 238000012423 maintenance Methods 0.000 claims description 4
- 238000013507 mapping Methods 0.000 claims description 4
- 230000001172 regenerating effect Effects 0.000 claims description 4
- 238000004590 computer program Methods 0.000 claims description 3
- 238000004088 simulation Methods 0.000 claims description 3
- 238000013522 software testing Methods 0.000 abstract 1
- 239000011159 matrix material Substances 0.000 description 9
- 238000004364 calculation method Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 230000006872 improvement Effects 0.000 description 5
- 230000006870 function Effects 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- QVGXLLKOCUKJST-UHFFFAOYSA-N atomic oxygen Chemical compound [O] QVGXLLKOCUKJST-UHFFFAOYSA-N 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 239000007789 gas Substances 0.000 description 2
- 239000001301 oxygen Substances 0.000 description 2
- 229910052760 oxygen Inorganic materials 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000005856 abnormality Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 239000003610 charcoal Substances 0.000 description 1
- 230000001276 controlling effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B23/00—Testing or monitoring of control systems or parts thereof
- G05B23/02—Electric testing or monitoring
- G05B23/0205—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
- G05B23/0218—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterised by the fault detection method dealing with either existing or incipient faults
- G05B23/0221—Preprocessing measurements, e.g. data collection rate adjustment; Standardization of measurements; Time series or signal analysis, e.g. frequency analysis or wavelets; Trustworthiness of measurements; Indexes therefor; Measurements using easily measured parameters to estimate parameters difficult to measure; Virtual sensor creation; De-noising; Sensor fusion; Unconventional preprocessing inherently present in specific fault detection methods like PCA-based methods
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T10/00—Road transport of goods or passengers
- Y02T10/10—Internal combustion engine [ICE] based vehicles
- Y02T10/40—Engine management systems
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Testing Of Engines (AREA)
Abstract
本申请涉及一种发动机控制系统的测试方法和装置。所述方法包括:按层级拆分发动机控制系统的结构,以获得所述发动机控制系统对应的结构树;为所述结构树中的每个节点设置测试用例集;执行所述根节点的测试用例集中的所有测试用例,以生成所述根节点的测试状态;响应于所述根节点的测试状态指示所述根节点为正常,结束测试;响应于所述根节点的当前测试状态指示所述根节点为异常,从所述根节点开始,执行基于测试增益的深度优先遍历。通过本申请的技术方案,能够在发动机控制系统测试过程中,准确快速地定位不达标的部件,提高测试效率。
Description
技术领域
本申请一般地涉及发动机技术领域,尤其涉及一种发动机控制系统的测试方法和装置。
背景技术
发动机控制系统用于控制发动机的运行状态,其以电子控制单元(ECU)为控制核心,以空气流量和发动机转速为控制基础,以喷油器、怠速空气调整器等为控制对象,保证获得与发动机各种工况相匹配的最佳混合气成分和点火时刻,对于保证发动机性能和安全都起着关键性的作用。
为了确保发动机控制系统稳定可靠地工作,目前,发动机控制系统的测试一般按照预先设定的顺序执行完所有的测试当执行完所有测试项目之后,得到测试结果。
然而,实际情况下,生产加工完毕的发动机控制系统只会出现少数几个部件不满足标准需求;在加工流程和加工工艺不出现重大差错的前提下,不会出现大量部件同时不达标的情况。按照固定测试实例和固定顺序对发动机控制系统进行测试,会执行不必要的测试项目,无法快速定位不达标的部件。基于此,如何在测试过程中,准确快速地定位不达标的部件,提高测试效率,是亟待解决的问题。
发明内容
为了解决本申请的上述技术问题,本申请提供了一种发动机控制系统的测试方法和装置,以期在发动机控制系统测试过程中,准确快速地定位不达标的部件,提高测试效率。
根据本申请的第一方面,提供了一种发动机控制系统的测试方法,包括:按层级拆分所述发动机控制系统的结构,以获得所述发动机控制系统对应的结构树,其中所述结构树包括根节点、子节点和叶子节点,每个节点对应一个设备;为所述结构树中的每个节点设置测试用例集,其中所述测试用例集包括至少一个测试用例;执行所述根节点的测试用例集中的所有测试用例,以生成所述根节点的测试状态,其中所述测试状态包括一种或多种测试参数,所述测试参数包括发动机的点火时刻、点火温度、电压值、电流值、发动机转速以及喷油量中的至少一种;响应于所述根节点的测试状态指示所述根节点为正常,结束所述发动机控制系统的测试,并生成测试结果,其中所述测试结果指示所述发动机控制系统为正常;响应于所述根节点的测试状态指示所述根节点为异常,从所述根节点开始,执行基于测试增益的深度优先遍历,其中在选择父节点的子节点时,根据所述父节点的测试状态计算其子节点的测试增益值,从所述父节点的所有子节点中选择测试增益值最大的子节点作为目标节点,其中所述测试增益值与所述子节点的异常概率呈正相关,与所述子节点的测试成本呈负相关;在到达叶子节点时,若所述叶子节点为正常,则继续深度优先遍历;若所述叶子节点为异常,则在所述叶子节点检修完成后,重新测试所述根节点;若所述根节点仍然异常,则继续所述深度优先遍历,直到所述根节点的测试状态指示所述根节点为正常,结束所述发动机控制系统的测试,并生成测试结果,其中所述测试结果指示所述发动机控制系统为异常并指示所述遍历过程中的异常节点。
在一个实施例中,所述响应于所述根节点的测试状态指示所述根节点为异常,从所述根节点开始,执行基于测试增益的深度优先遍历包括:在测试数据库中查找与所述根节点的测试状态最相似的预设数量的参考测试状态;根据所述预设数量的参考测试状态,计算所述根节点的所有子节点的测试增益值,并从所述子节点中选择测试增益值最大的子节点作为目标节点。
在一个实施例中,所述响应于所述根节点的测试状态指示所述根节点为异常,从所述根节点开始,执行基于测试增益的深度优先遍历还包括:执行所述目标节点的测试用例集中的所有测试用例,以生成所述目标节点的测试状态;响应于所述目标节点的测试状态指示所述目标节点为正常,返回所述根节点,并从所述根节点的子节点中选择测试增益值次大的子节点作为下一目标节点;响应于所述目标节点的测试状态指示所述目标节点为异常,确定所述目标节点是否为叶子节点;响应于所述目标节点为叶子节点,在所述目标节点检修完成后,重新生成所述根节点的测试状态;响应于所述目标节点为非叶子节点,计算所述目标节点的所有子节点的测试增益值,从所述子节点中选择测试增益值最大的子节点作为下一目标节点;重复执行上述步骤,直到所述根节点的测试状态指示所述根节点为正常,结束测试,并生成所述测试结果。
在一个实施例中,所述根据所述预设数量的参考测试状态,计算所述根节点的所有子节点的测试增益值包括:针对所述根节点的每个子节点,根据所述预设数量的参考测试状态中所述子节点的异常事件数量在所述结构树中所有节点的异常事件总数量中的比例,计算所述子节点的异常概率;根据所述预设数量的参考测试状态中从所述根节点到达所述子节点的遍历路径中包括的所有节点的测试用例总数量,计算所述子节点的测试成本;根据所述子节点的异常概率和测试成本,计算所述子节点的测试增益值。
在一个实施例中,所述根据所述子节点的异常概率和测试成本,计算所述子节点的测试增益值包括:根据以下关系式计算所述子节点的测试增益值:
其中,为所述根节点处于测试状态a时,子节点/>的测试增益值,/>为所述子节点/>的异常概率,/>为所述子节点/>的测试成本。
在一个实施例中,所述执行所述根节点的测试用例集中的所有测试用例,以生成所述根节点的测试状态包括:针对所述测试用例集中的每一测试用例,执行所述测试用例,以生成所述测试用例对应的状态向量,其中每一测试用例包括特定工况的模拟输入以及对应的标准输出,其中所述标准输出包括至少一个维度,所述状态向量包括所述标准输出在每一个维度上与真实输出之间的差异等级;将所有测试用例的状态向量拼接在一起,以获得所述根节点在当前测试中的测试状态。
在一个实施例中,所述差异等级满足关系式:
其中,为第i个测试用例在输出维度j上的差异等级,/>为第i个测试用例中真实输出在输出维度j上的数值,/>为第i个测试用例中标准输出在输出维度j上的数值,/>为第i个测试用例在输出维度j上的映射系数。
在一个实施例中,所述根节点的测试状态指示所述根节点为正常包括:所述根节点的测试状态的L1范数等于0。
在一个实施例中,所述响应于所述目标节点的测试状态指示所述目标节点为正常,返回所述根节点包括:将所述目标节点所在的子树结构从所述结构树中删除后返回所述根节点。
根据本申请的第二方面,提供了一种发动机控制系统的测试装置,包括处理器和存储器,所述存储器存储有计算机程序指令,当所述计算机程序指令被所述处理器执行时实现根据本申请第一方面所述的发动机控制系统的测试方法。
本申请的技术方案具有以下有益技术效果:
根据本申请的技术方案,对发动机控制系统进行层级拆分以生成所述发动机控制系统的结构树,并首先测试根节点,如果所述根节点正常即结束测试;如果所述根节点异常,则根据同型号发动机控制系统的测试数据计算所述结构树中节点的异常概率和测试成本进而计算其测试增益,以便在遍历所述结构树时,根据所述节点的测试增益自适应确定最优遍历路径。通过这种方式,能够避免对发动机控制系统的所有结构进行测试,简化测试流程的同时,可以精准定位不满足预设标准的最小测试单元,提高了测试效率。
附图说明
通过参考附图阅读下文的详细描述,本申请示例性实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本申请的若干实施方式,并且相同或对应的标号表示相同或对应的部分,其中:
图1是根据本申请实施例的发动机控制系统的测试方法的流程图;
图2是根据本申请实施例的发动机控制系统的测试方法中结构树的示意图;
图3是根据本申请实施例的发动机控制系统的测试方法中所使用的差异等级计算函数的示意图;
图4是根据本申请实施例的发动机控制系统的测试方法的测试流程图;
图5是根据本申请实施例的发动机控制系统的测试装置的框图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
应当理解,当本申请的权利要求、说明书及附图使用术语“第一”、“第二”等时,其仅是用于区别不同对象,而不是用于描述特定顺序。本申请的说明书和权利要求书中使用的术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
根据本申请的第一方面,本申请提供了一种发动机控制系统的测试方法。本申请的测试方法可以应用于各种发动机控制系统的测试,如汽油机发动机控制系统、柴油机发动机控制系统等,本申请对此不作特别限定。
图1是根据本申请实施例的发动机控制系统的测试方法的流程图。如图1所示,所述测试方法100包括步骤S101至S105,以下详细说明。
S101,按层级拆分所述发动机控制系统的结构,以获得所述发动机控制系统对应的结构树,其中所述结构树包括根节点、子节点和叶子节点,每个节点对应一个设备。
具体而言,对发动机控制系统进行从上到下的层级拆分,得到发动机控制系统的结构树。具体地,根节点为发动机控制系统,对所述发动机控制系统进行初级拆分,得到第一层节点;对每个第一层节点进行多次拆分,直至节点对应的结构为最小测试单元时停止,得到发动机控制系统的结构树。其中,最小测试单元为发动机控制系统中需要进行测试的最小结构单元。图2是根据本申请实施例的发动机控制系统的测试方法中结构树的示意图。如图2所示,1为根节点,3、5、6、7、8、10、11、12、13、14、15、16为叶子节点,对应最小测试单元,即上述发动机控制系统共包括12个最小测试单元。在图2中,2为燃油喷射系统,3为点火系统,4为辅助系统,5为数据采集系统,6为喷油正时控制,7为断油控制,8为燃油泵控制,9为排放控制,10为怠速控制系统,11为进气控制系统,12为增压控制系统,13为废气再循环(EGR)控制,14为活性炭罐电磁阀控制,15为氧传感器,16为空燃比闭环控制。
S102,为所述结构树中的每个节点设置测试用例集,其中所述测试用例集包括至少一个测试用例。
具体而言,对于所述结构树中的每一个节点,设置每一个节点的测试用例集;所述测试用例集包括不同工况下的多个测试用例,每个测试用例包括对应工况的模拟输入以及对应的标准输出,需要说明的是,标准输出为包括转速、温度、电压、电流等其他测试指标的多维数据。例如,对于根节点,所述根节点对应于发动机控制系统,则根节点对应的测试用例可以测试整个发动机控制系统的多种性能。
作为测试用例的具体示例:启动过程中,标准输出包括发动机的电压值、电流值、转速以及喷油量共4个维度的标准值;制动过程中,标准输出包括发动机的电压值、电流值、转速以及喷油量共4个维度的标准值;驻车过程中,标准输出包括发动机的电压值、电流值、转速以及喷油量共4个维度的标准值,等等。每种工况对应一个测试用例,一个测试用例包括4个维度。
S103,执行所述根节点的测试用例集中的所有测试用例,以生成所述根节点的测试状态,其中所述测试状态包括一种或多种测试参数,所述测试参数包括发动机的点火时刻、点火温度、电压值、电流值、发动机转速以及喷油量中的至少一种。
具体而言,所述执行所述根节点的测试用例集中的所有测试用例,以生成所述根节点的测试状态包括:针对所述测试用例集中的每一测试用例,执行所述测试用例,以生成所述测试用例对应的状态向量,其中每一测试用例包括特定工况的模拟输入以及对应的标准输出,其中所述标准输出包括至少一个维度,所述状态向量包括所述标准输出在每一个维度上与真实输出之间的差异等级;将所有测试用例的状态向量拼接在一起,以获得所述根节点在当前测试中的测试状态。
具体地,首先定义节点的测试状态:对于任意一个节点的每一个测试用例,在测试过程中执行该测试用例后并对比真实输出与标准输出,得到该测试用例对应的状态向量,所述状态向量包括标准输出在每一个维度上与真实输出之间的差异等级,例如,测试用例的标准输出中共包括发动机的电压值、电流值、转速以及喷油量四个维度,则该测试用例的状态向量为1行4列;将一次测试过程中,将同一节点所有测试用例的状态向量拼接在一起即可得到该节点的测试状态。
需要说明的是,相同节点的不同测试用例之间状态向量的列数不一致,需要在每一列的末端补0,以使相同节点的不同测试用例之间状态向量的列数相同,故节点的测试状态为M行N列的矩阵,其中,M行对应该节点的M个测试用例,N为M个测试用例中状态向量的最大列数。示例性的,假设测试用例集中包括6个测试用例,测试用例中标准输出的最大维度为4,则对应的测试状态为6行4列的状态矩阵,每一行表示对应的测试用例真实输出和标准输出之间的差异等级;可以理解的是,测试用例中标准输出的维度小于4时,在对应行的末端填充0,直至该行的列数为4。
其中,在测试状态中,第行第/>列为第i个测试用例中,真实输出和标准输出在输出维度j上的差异等级,所述差异等级满足关系式:
其中,为第i个测试用例中真实输出在输出维度j上的数值,/>为第i个测试用例中标准输出在输出维度j上的数值;/>为第i个测试用例在输出维度j上的差异等级;用于将连续的/>映射到离散的预设取值空间内,/>为第i个测试用例在输出维度j上的映射系数,映射系数反应发动机控制系统的测试对不同维度(转速、温度、电压、电流等)的重视程度,由专业人员灵活设定。
每一节点的测试状态中的测试参数与所述节点相对应,并且测试用例数量和输出维度数量可能不相同,因此不同节点的测试状态的矩阵的行数和列数可能不同。例如,节点2(燃油喷射系统)对应的测试参数可以包括喷油时刻、喷油量、燃油/氧气比,可以包括3个测试用例,由此其测试状态的矩阵为3行3列。
例如,的函数图像如图3所示。图3是根据本申请实施例的发动机控制系统的测试方法中所使用的差异等级计算函数的示意图。如图3所示,预设取值空间为{-5,-4,-3,-2,-1,0,1,2,3,4,5},即将/>的连续数值映射为11种不同的差异等级,当/>的取值在/>(其中在图3中为了表示方便,/>被简写为/>)时对应的差异等级为3;此时,若节点对应的测试状态为2行3列,则该节点最多有/>种测试状态。
作为一个实例,所述根节点的测试用例集中包括6个测试用例,测试用例中标准输出的最大维度为4,则根节点对应的测试状态为6行4列的矩阵,以第一行为例,其对应发动机启动过程的测试用例的测试结果,其中测试参数包括发动机的电压值、电流值、转速以及喷油量,其中电压值被映射为1,电流值被映射为2,转速被映射为0,喷油量被映射为0。第二行对应发动机制动过程的测试用例对应的测试结果,第三行对应发动机驻车过程的测试用例对应的测试结果,等等。
S104,响应于所述根节点的测试状态指示所述根节点为正常,结束所述发动机控制系统的测试,并生成测试结果,其中所述测试结果指示所述发动机控制系统为正常。
具体而言,所述根节点的测试状态指示所述根节点为正常包括:所述根节点的测试状态的L1范数等于0,其中L1范数表示矩阵中每个元素的绝对值的和。若根节点对应的测试状态的L1范数等于0,则表示根节点对应的结构(整个发动机控制系统)满足所有性能要求,也就是说,发动机控制系统中每一个最小测试单元均满足预设标准,此时停止测试;若根节点对应的测试状态的L1范数不等于0,则说明根节点对应的结构(整个发动机控制系统)不满足性能要求,也就是说,根节点的子节点中,至少有一个节点对应的结构不满足预设要求,继续进行测试。
在上述实例中,所述根节点的测试状态的L1范数不等于0,表明所述发动机控制系统中存在异常组件。接下来通过遍历上述结构树来定位所述异常组件。
S105,响应于所述根节点的测试状态指示所述根节点为异常,从所述根节点开始,执行基于测试增益的深度优先遍历,其中在选择父节点的子节点时,根据所述父节点的测试状态计算其子节点的测试增益值,从所述父节点的所有子节点中选择测试增益值最大的子节点作为目标节点,其中所述测试增益值与所述子节点的异常概率呈正相关,与所述子节点的测试成本呈负相关;在到达叶子节点时,若所述叶子节点为正常,则继续深度优先遍历;若所述叶子节点为异常,则在所述叶子节点检修完成后,重新测试所述根节点;若所述根节点仍然异常,则继续所述深度优先遍历,直到所述根节点的测试状态指示所述根节点为正常,结束所述发动机控制系统的测试,并生成测试结果,其中所述测试结果指示所述发动机控制系统为异常并指示所述遍历过程中的异常节点。
具体而言,以上提及的基于测试增益的深度优先遍历是根据本发明的应用场景对传统深度优先遍历的改进。其中改进之一是在传统深度优先遍历的基础上,每次沿父节点的深度方向遍历时,获取该父节点的测试状态,计算该父节点的子节点对应的测试增益,将该父节点的测试状态下测试增益值最大的子节点作为下一个目标节点,而并非传统深度优先遍历中按照左节点到父节点再到右节点的常规遍历顺序。通过这种遍历方式,可以更快地发现异常节点,提高测试效率。
图4是根据本申请实施例的发动机控制系统的测试方法的测试流程图。如图4所示,所述响应于所述根节点的测试状态指示所述根节点为异常,从所述根节点开始,执行基于测试增益的深度优先遍历包括:在测试数据库中查找与所述根节点的测试状态最相似的预设数量的参考测试状态;根据所述预设数量的参考测试状态,计算所述根节点的所有子节点的测试增益值,并从所述子节点中选择测试增益值最大的子节点作为目标节点。
所述测试数据库中存储了各种发动机控制系统的历史测试数据,从中查询与正在测试的发动机控制系统的型号相同的发动机控制系统的测试数据,并从中选择与所述根节点的测试状态最相似的预设数量的参考测试状态。由于所述测试状态为矩阵,可以使用矩阵相似度计算方法,如欧式距离法,选择最相似的预设数量的参考测试状态。当然,也可以使用其他矩阵相似度计算方法计算矩阵相似度,本申请对此不作特别限定。
作为一个实例,通过计算矩阵间欧氏距离,从所述测试数据库中选择与所述根节点的测试状态最相似的4个参考测试状态,分别为、/>、、/>。
进一步,所述根据所述预设数量的参考测试状态,计算所述根节点的所有子节点的测试增益值包括:针对所述根节点的每个子节点,根据所述预设数量的参考测试状态中所述子节点的异常事件数量在所有节点的异常事件总数量中的比例,计算所述子节点的异常概率;根据所述预设数量的参考测试状态中从所述根节点到达所述子节点的遍历路径中包括的所有节点的测试用例总数量,计算所述子节点的测试成本;根据所述子节点的异常概率和测试成本,计算所述子节点的测试增益值。
具体而言,由于所述根节点的测试状态指示所述根节点为异常,所选择的每个参考测试状态的L1范数同样不等于0。针对每个子节点,每次发现根节点异常,该子节点也异常时,则该子节点的异常事件数量加1,由此统计在根节点的每个参考测试状态下,每个子节点的异常事件数量,并计算所述子节点在所有参考测试状态中的异常事件总数量。进一步,统计所有参考测试状态中所有子节点的异常事件总数量,进而可以计算所述预设数量的参考测试状态中所述子节点的异常事件总数量在所有节点的异常事件总数量中的比例,作为所述子节点的异常概率。
例如,对于一个父节点,其包括3个子节点,3个子节点的异常概率序列表示为(a1,b1,c1),该异常概率序列对应的测试状态A;那么在测试状态A下,3个节点的异常概率分别为a1、b1和c1。其中,a1、b1和c1的计算方法可以是,根据历史数据,在测试状态A对应的测试包括若干次,其中共统计到3个节点的异常事件数量分别为Pa、Pb、Pc,那么a1=Pa/(Pa+Pb+Pc),b1=Pb/(Pa+Pb+Pc),c1=Pc/(Pa+Pb+Pc),
在上述实例中,所述根节点1包括4个子节点2、3、4、5,其对应的异常概率分别为0.24、0.31、0.14、0.09。
对于所述根节点的每个参考测试状态,针对每个子节点,统计所述预设数量的参考测试状态中从所述根节点到达所述子节点的遍历路径中包括的所有节点的测试用例总数量,进而可以以所述参考测试状态与所述根节点的当前测试状态之间的相似度作为权重,计算到达所述子节点的遍历路径中包括的所有节点的测试用例平均数量,作为所述子节点的测试成本。当然也可以直接计算所述预设数量的参考测试状态中到达所述子节点的遍历路径中包括的所有节点的测试用例数量的平均值,作为所述子节点的测试成本,本申请对此不作特别限定。
在上述实例中,以子节点2为例,在4个参考测试状态中,从根节点到达子节点2的遍历路径中包含的所有节点的测试用例总数量分别为13、18、12、17,其平均值为15,则子节点2的测试成本为15。以同样方式分别计算子节点3、4、5的测试成本,分别为18、21.25、24.5。
作为示例,所述根据所述子节点的异常概率和测试成本,计算所述子节点的测试增益值包括:根据以下关系式计算所述子节点的测试增益值:
其中,为所述根节点处于测试状态a时,子节点/>的测试增益值,/>为所述子节点/>的异常概率,/>为所述子节点/>的测试成本。
在上述实例中,根据子节点2、3、4、5的异常概率和测试成本,计算子节点2、3、4、5的测试增益值,分别为7.34e-8、4.72e-9、8.27e-11、2.06e-12。则子节点2的测试增益值最大,进而确定在测试根节点后测试子节点2。
值得注意的是,根节点仅仅是非叶子节点中的一个,上述计算根节点的子节点的测试增益值的方法也适用于其他非叶子节点,区别在于每一非叶子节点的子节点选择范围缩小到所述非叶子节点所在的子树。
本申请中的基于测试增益的深度优先遍历的改进之二在于在到达叶子节点时,若所述叶子节点为正常,则继续深度优先遍历;若所述叶子节点为异常,则在所述叶子节点检修完成后,返回所述根节点,重新测试所述根节点,而非如传统深度优先遍历中那样,在获得节点状态后即开始向下一个待遍历节点移动,直至遍历完树中所有节点。通过这种改进,能够避免对发动机控制系统的所有结构逐一进行测试,无须测试不必要组件,从而简化测试流程。
相应地,如图4所示,所述响应于所述根节点的测试状态指示所述根节点为异常,从所述根节点开始,执行基于测试增益的深度优先遍历还包括:执行所述目标节点的测试用例集中的所有测试用例,以生成所述目标节点的测试状态;响应于所述目标节点的测试状态指示所述目标节点为正常,返回所述根节点,并从所述根节点的子节点中选择测试增益值次大的子节点作为下一目标节点;响应于所述目标节点的测试状态指示所述目标节点为异常,确定所述目标节点是否为叶子节点;响应于所述目标节点为叶子节点,在所述目标节点检修完成后,重新生成所述根节点的测试状态;响应于所述目标节点为非叶子节点,计算所述目标节点的所有子节点的测试增益值,从所述子节点中选择测试增益值最大的子节点作为下一目标节点;重复执行上述步骤,直到所述根节点的测试状态指示所述根节点为正常,结束测试,并生成所述测试结果。
具体而言,若目标节点对应的测试状态的L1范数不等于0,则进一步判断所述目标节点是否为叶子节点,当所述目标节点为叶子节点时,表示该目标节点对应的结构不满足预设标准;对该目标节点对应的结构进行检修之后,重新生成所述根节点的测试状态;当所述目标节点不是叶子节点时,计算所述目标节点的所有子节点的测试增益值,重复上述循环,直到所述根节点的测试状态的L1范数等于0,停止测试,并生成测试结果,其中所述测试结果指示所述发动机控制系统为异常并指示所述遍历过程中的异常节点。
在上述实例中,执行子节点2的测试用例集,发现其测试状态的L1范数不等于0,继续往下遍历到达叶子节点8,执行叶子节点8的测试用例集,发现叶子节点8异常。在叶子节点8检修完成后,重新测试根节点1,此时根节点的测试状态的L1范数等于0,表明此次测试中叶子节点8异常,其他节点正常。
可选地,可以将测试结果存储到测试数据库中供后续使用。此外,为了防止程序运行死循环,若目标节点对应的测试状态的L1范数等于0,则将目标节点的子树结构从结构树中删除后再返回所述根节点。
以上通过具体实施例介绍了本申请的发动机控制系统的测试方法的技术原理和实施细节。通过本申请提供的技术方案,对发动机控制系统进行层级拆分以生成所述发动机控制系统的结构树,并首先测试根节点,如果所述根节点正常即结束测试;如果所述根节点异常,则根据同型号发动机控制系统的测试数据计算所述结构树中节点的异常概率和测试成本进而计算其测试增益,以便在遍历所述结构树时,根据所述节点的测试增益自适应确定最优遍历路径。通过这种方式,能够避免对发动机控制系统的所有结构进行测试,简化测试流程的同时,可以精准定位不满足预设标准的最小测试单元,提高了测试效率。
根据本申请的第二方面,本申请还提供了一种发动机控制系统的测试装置。图5是根据本申请实施例的发动机控制系统的测试装置的框图。如图5所示,所述装置50包括处理器和存储器,所述存储器存储有计算机程序指令,当所述计算机程序指令被所述处理器执行时实现根据本申请第一方面所述的在协同办公系统中集成电子白板的方法。所述装置还包括通信总线和通信接口等本领域技术人员熟知的其他组件,其设置和功能为本领域中已知,因此在此不再赘述。
在本申请中,前述的存储器可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。例如,计算机可读存储介质可以是任何适当的磁存储介质或者磁光存储介质,比如,阻变式存储器RRAM(Resistive RandomAccess Memory)、动态随机存取存储器DRAM(Dynamic Random Access Memory)、静态随机存取存储器SRAM(Static Random-Access Memory)、增强动态随机存取存储器EDRAM(Enhanced Dynamic Random Access Memory)、高带宽内存HBM(High-Bandwidth Memory)、混合存储立方HMC(Hybrid Memory Cube)等等,或者可以用于存储所需信息并且可以由应用程序、模块或两者访问的任何其他介质。任何这样的计算机存储介质可以是设备的一部分或可访问或可连接到设备。本申请描述的任何应用或模块可以使用可以由这样的计算机可读介质存储或以其他方式保持的计算机可读/可执行指令来实现。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (7)
1.一种发动机控制系统的测试方法,其特征在于,包括:
按层级拆分所述发动机控制系统的结构,以获得所述发动机控制系统对应的结构树,其中所述结构树包括根节点、子节点和叶子节点,每个节点对应一个设备;
为所述结构树中的每个节点设置测试用例集,其中所述测试用例集包括至少一个测试用例;
执行所述根节点的测试用例集中的所有测试用例,以生成所述根节点的测试状态,其中所述测试状态包括一种或多种测试参数,所述测试参数包括发动机的点火时刻、点火温度、电压值、电流值、发动机转速以及喷油量中的至少一种;
响应于所述根节点的测试状态指示所述根节点为正常,结束所述发动机控制系统的测试,并生成测试结果,其中所述测试结果指示所述发动机控制系统为正常;
响应于所述根节点的测试状态指示所述根节点为异常,从所述根节点开始,执行基于测试增益的深度优先遍历,其中在选择父节点的子节点时,根据所述父节点的测试状态计算其子节点的测试增益值,从所述父节点的所有子节点中选择测试增益值最大的子节点作为目标节点,其中所述测试增益值与所述子节点的异常概率呈正相关,与所述子节点的测试成本呈负相关;在到达叶子节点时,若所述叶子节点为正常,则继续深度优先遍历;若所述叶子节点为异常,则在所述叶子节点检修完成后,重新测试所述根节点;若所述根节点仍然异常,则继续所述深度优先遍历,直到所述根节点的测试状态指示所述根节点为正常,结束所述发动机控制系统的测试,并生成测试结果,其中所述测试结果指示所述发动机控制系统为异常并指示所述遍历过程中的异常节点;
所述响应于所述根节点的测试状态指示所述根节点为异常,从所述根节点开始,执行基于测试增益的深度优先遍历包括:
在测试数据库中查找与所述根节点的测试状态最相似的预设数量的参考测试状态;
根据所述预设数量的参考测试状态,计算所述根节点的所有子节点的测试增益值,并从所述子节点中选择测试增益值最大的子节点作为目标节点;
所述根据所述预设数量的参考测试状态,计算所述根节点的所有子节点的测试增益值包括:
针对所述根节点的每个子节点,根据所述预设数量的参考测试状态中所述子节点的异常事件数量在所述结构树中所有节点的异常事件总数量中的比例,计算所述子节点的异常概率;
根据所述预设数量的参考测试状态中从所述根节点到达所述子节点的遍历路径中包括的所有节点的测试用例总数量,计算所述子节点的测试成本;
根据所述子节点的异常概率和测试成本,计算所述子节点的测试增益值;
所述根据所述子节点的异常概率和测试成本,计算所述子节点的测试增益值包括:根据以下关系式计算所述子节点的测试增益值:
其中,为所述根节点处于测试状态a时,子节点/>的测试增益值, />为所述子节点/>的异常概率,/>为所述子节点/>的测试成本。
2.根据权利要求1所述的发动机控制系统的测试方法,其特征在于,所述响应于所述根节点的测试状态指示所述根节点为异常,从所述根节点开始,执行基于测试增益的深度优先遍历还包括:
执行所述目标节点的测试用例集中的所有测试用例,以生成所述目标节点的测试状态;
响应于所述目标节点的测试状态指示所述目标节点为正常,返回所述根节点,并从所述根节点的子节点中选择测试增益值次大的子节点作为下一目标节点;
响应于所述目标节点的测试状态指示所述目标节点为异常,确定所述目标节点是否为叶子节点;
响应于所述目标节点为叶子节点,在所述目标节点检修完成后,重新生成所述根节点的测试状态;
响应于所述目标节点为非叶子节点,计算所述目标节点的所有子节点的测试增益值,从所述子节点中选择测试增益值最大的子节点作为下一目标节点;
重复执行上述步骤,直到所述根节点的测试状态指示所述根节点为正常,结束测试,并生成所述测试结果。
3. 根据权利要求1 所述的发动机控制系统的测试方法,其特征在于,所述执行所述根节点的测试用例集中的所有测试用例,以生成所述根节点的测试状态包括:
针对所述测试用例集中的每一测试用例,执行所述测试用例,以生成所述测试用例对应的状态向量,其中每一测试用例包括特定工况的模拟输入以及对应的标准输出,其中所述标准输出包括至少一个维度,所述状态向量包括所述标准输出在每一个维度上与真实输出之间的差异等级;
将所有测试用例的状态向量拼接在一起,以获得所述根节点在当前测试中的测试状态。
4.根据权利要求3所述的发动机控制系统的测试方法,其特征在于,所述差异等级满足关系式:
其中,为第i个测试用例在输出维度j上的差异等级,/>为第i个测试用例中真实输出在输出维度j 上的数值,/>为第i个测试用例中标准输出在输出维度j上的数值,/>为第i个测试用例在输出维度j上的映射系数。
5. 根据权利要求4所述的发动机控制系统的测试方法,其特征在于,所述根节点的测试状态指示所述根节点为正常包括:所述根节点的测试状态的L1 范数等于0。
6.根据权利要求2所述的发动机控制系统的测试方法,其特征在于,所述响应于所述目标节点的测试状态指示所述目标节点为正常,返回所述根节点包括:将所述目标节点所在的子树结构从所述结构树中删除后返回所述根节点。
7. 一种发动机控制系统的测试装置,其特征在于,包括处理器和存储器,所述存储器存储有计算机程序指令,当所述计算机程序指令被所述处理器执行时实现根据权利要求1至6中任一项所述的发动机控制系统的测试方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310569352.8A CN116300836B (zh) | 2023-05-19 | 2023-05-19 | 发动机控制系统的测试方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310569352.8A CN116300836B (zh) | 2023-05-19 | 2023-05-19 | 发动机控制系统的测试方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116300836A CN116300836A (zh) | 2023-06-23 |
CN116300836B true CN116300836B (zh) | 2023-07-28 |
Family
ID=86787326
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310569352.8A Active CN116300836B (zh) | 2023-05-19 | 2023-05-19 | 发动机控制系统的测试方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116300836B (zh) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109765447A (zh) * | 2019-01-29 | 2019-05-17 | 国网冀北电力有限公司唐山供电公司 | 一种智能变电站继电保护自动测试方法 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7543200B2 (en) * | 2005-02-17 | 2009-06-02 | Advantest Corporation | Method and system for scheduling tests in a parallel test system |
US7886247B2 (en) * | 2008-04-29 | 2011-02-08 | International Business Machines Corporation | Method and apparatus for statistical path selection for at-speed testing |
US9311223B2 (en) * | 2013-05-21 | 2016-04-12 | International Business Machines Corporation | Prioritizing test cases using multiple variables |
CN113238901B (zh) * | 2021-05-10 | 2023-02-17 | 展讯通信(上海)有限公司 | 多设备的自动化测试方法及装置、存储介质、计算机设备 |
CN116028883A (zh) * | 2021-10-20 | 2023-04-28 | 华晨宝马汽车有限公司 | 分析发动机测试故障的方法、分析系统及计算机存储介质 |
CN116107892A (zh) * | 2023-02-01 | 2023-05-12 | 浙江极氪智能科技有限公司 | 自动化测试方法、装置、设备及存储介质 |
-
2023
- 2023-05-19 CN CN202310569352.8A patent/CN116300836B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109765447A (zh) * | 2019-01-29 | 2019-05-17 | 国网冀北电力有限公司唐山供电公司 | 一种智能变电站继电保护自动测试方法 |
Also Published As
Publication number | Publication date |
---|---|
CN116300836A (zh) | 2023-06-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108595664B (zh) | 一种hadoop环境下的农业数据监控方法 | |
EP3232342B1 (en) | Methods and systems for bidirectional indexing summary | |
CN116627972B (zh) | 一种覆盖指标的结构化数据离散存储系统 | |
US20230315728A1 (en) | Methods and systems for undetermined query analytics | |
CN116300836B (zh) | 发动机控制系统的测试方法和装置 | |
CN114238085A (zh) | 接口测试方法、装置、计算机设备、存储介质 | |
US20180232457A1 (en) | Methods And Systems For Bidirectional Indexing Using Indexlets | |
CN114936257A (zh) | 面向船舶运行数字孪生体的孪生数据集成化管理方法 | |
Schneider | A relational view of the data independent accessing model | |
CN116610383B (zh) | 一种部分加载目标文件的方法 | |
CN116627974B (zh) | 一种覆盖率存储系统 | |
CN116627973B (zh) | 一种数据定位系统 | |
CN116820602B (zh) | 一种数据库部分加载系统 | |
CN116954745B (zh) | 一种目标文件部分加载系统 | |
CN116610577B (zh) | 一种覆盖率获取方法 | |
Mansfield et al. | Genetic Optimization for Engine Combustion System Calibration: A Case Study of Optimization Performance Sensitivity to Algorithm Search Parameters | |
CN117453577B (zh) | 基于流量录制生成接口自动化用例的方法、装置和计算机设备 | |
CN116627568B (zh) | 一种数据可视化定位系统 | |
CN113986214B (zh) | 核电站dcs系统应用软件逻辑图连线数据处理方法 | |
US20230070159A1 (en) | Database modification using a script component | |
Ding et al. | Research on Data Synchronization Consistency Comparison System Based on Computer Heterogeneous Database | |
CN116842107A (zh) | 实时数据仓库构建方法、装置、设备和存储介质 | |
CN117406056A (zh) | 边界值确定方法、装置、计算机设备和存储介质 | |
CN115858389A (zh) | 基线用例自动生成方法、装置、存储介质及计算机设备 | |
CN117891748A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |