CN106708725A - 一种测试与诊断相结合的测试序列动态管理方法 - Google Patents

一种测试与诊断相结合的测试序列动态管理方法 Download PDF

Info

Publication number
CN106708725A
CN106708725A CN201510788228.6A CN201510788228A CN106708725A CN 106708725 A CN106708725 A CN 106708725A CN 201510788228 A CN201510788228 A CN 201510788228A CN 106708725 A CN106708725 A CN 106708725A
Authority
CN
China
Prior art keywords
test
diagnosis
diagnostic
cycle tests
fault
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
CN201510788228.6A
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.)
Shanghai Institute of Electromechanical Engineering
Original Assignee
Shanghai Institute of Electromechanical Engineering
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 Shanghai Institute of Electromechanical Engineering filed Critical Shanghai Institute of Electromechanical Engineering
Priority to CN201510788228.6A priority Critical patent/CN106708725A/zh
Publication of CN106708725A publication Critical patent/CN106708725A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

本发明的一种测试与诊断相结合的测试序列动态管理方法,其步骤包括:首先编写测试各步骤对应的测试程序,在此基础上建立测试序列,并保存为模板;加载执行测试序列,在没有检测出故障的情况下,测试步骤按照设置的测试序列进行,直至测试结束;当检测出故障时启动诊断系统,如果诊断不成功结束测试和诊断流程;诊断成功则查询诊断输出结果,如果已定位故障或诊断出错,结束测试和诊断流程;如果需要进行加测,则根据诊断系统提供的加测项目产生新的测试序列,并进行加测,加测完成后,再次进入诊断步骤,直至定位故障;故障测试与诊断结束后,输出测试与诊断结果,以及相应的维修建议。

Description

一种测试与诊断相结合的测试序列动态管理方法
技术领域
本发明涉及自动化测控技术领域,具体涉及一种对测试序列进行动态管理,正常时按设定的顺序执行测试序列,当发生故障时,根据故障诊断软件测试策略动态生成测试子序列,并将其加载执行的方法。
背景技术
自动测试系统是指在人极少参与或不参与的情况下,自动进行测量,数据处理,并以适当方式显示或输出测试结果的系统。与人工测试相比,自动测试省时、省力,能提高劳动生产率和产品质量。故障测试软件是自动测试系统实现的基础,也为故障诊断软件提供必要的故障信息。
传统的测试系统软件按照静态的顺序执行预先生成的固定测试集,随后在测试过程中按照一个固定的次序独立地运行各个测试子序列,如果需要更改测试顺序,则必须重新编译,测试软件运行效率和灵活性不高。
并且传统的故障测试与故障诊断之间没有交互,不能根据诊断系统的要求为诊断提供必要的信息。每次必须等到测试流程走完后才能进行诊断,对于诊断而言,此时测试获取的信息可能冗余,也可能信息过少而无法进行正确诊断。
发明内容
针对现有技术的不足,本发明给出了测试系统与诊断系统相交互、测试序列动态生成和执行的测试序列动态管理机制。在正常情况下,测试过程按照预先设置的测试序列进行;当检测出故障时,激发诊断系统,根据诊断系统的结果,生成新的测试序列,并加载执行。
该测试与诊断相结合的测试序列动态管理方法,具体步骤如下:
步骤一,编写测试各步骤对应的测试程序,在此基础上建立测试序列,并保存为模板;
步骤二,加载执行测试序列,在没有检测出故障的情况下,测试步骤按照设置的测试序列进行,直至测试结束,进入步骤六;当检测出故障时,进行步骤三;
步骤三,启动诊断系统,如果诊断不成功进入步骤六;诊断成功则进入步骤四;
步骤四,根据诊断输出结果,如果需要进行加测,则进入步骤五;如果已定位故障或诊断出错,则进入步骤六;
步骤五,根据诊断系统提供的加测项目产生新的测试序列,并进行加测,加测完成后进入步骤三,进行再次诊断;
步骤六,故障测试与诊断结束,输出测试与诊断结果,以及相应的维修建议。
进一步,测试系统和诊断系统的交互方式有两个方面:
1、测试参数出现异常条件下,通过参数代码、时间戳和诊断使能标志触发诊断软件,诊断软件启动开始诊断;
2、诊断完成后,对诊断结果进行解释有三种情况:a、出故障结果和策略;b、有故障无结果和策略;c、出加测策略,等待新数据指令。诊断系统将最终的诊断结果返给测试系统。
根据测试系统与诊断系统的交互方式,步骤一中,在TestStand软件环境下,建立一个测试序列模板,在研制阶段,需要把特定UUT(被测设备)测试的所有测试项目加入到模板文件,并进行相应的参数设置。在测试阶段,通过“序列配置对话框”手动配置测试流程,生成不同UUT、特定UUT不同测试状态的测试序列文件,并保存为配置文件,方便以后加载执行;
步骤二,加载执行测试序列,在没有检测出故障的情况下,测试步骤按照设置的测试序列进行,直至测试结束,进入步骤六;当检测出故障时,进行步骤三;
步骤三,根据检测到的错误,输出参数代码、时间戳和诊断使能标志触发诊断系统,诊断系统进行故障诊断,输出诊断状态标志。参数代码表征系统级测试项目和组件级测试项目的特征参数,时间戳是该特征参数获取的时间,使能标志定义诊断系统是否需要有效激发,诊断状态标志则是诊断系统运行的结果反馈,其中0表示启动诊断程序未成功,进入步骤六;1表示诊断程序运行结束了,诊断结果放在诊断结果表中,进入步骤四;
步骤四,诊断状态字为1,表示本次诊断顺利结束,测试软件随后按照“序号”字段对历史诊断表中的记录进行索引,找出序号值最大的记录,并对该记录中“策略”字段进行解析,并执行对应的操作。“策略”字段中,0表示诊断出故障结果,提取“定位”字段和“原因”字段的信息,进入步骤六;“策略”字段中1,表示未诊断出结果,也不需要再加测,进入步骤6;“策略”字段中六,表示诊断信息不够,需要进行加测才能进行正确诊断,进入步骤五;
步骤五,测试软件根据诊断信息中的加测项目产生、加载并执行新的测试序列集,以获取诊断软件需要的额外测试信息,最后一个加测序列执行完毕后测试软件输入原始故障发生时相同的参数代码和时间戳,并将使能标志置为有效,开始二次故障诊断,进入步骤三;
步骤六,故障测试与诊断结束,输出测试与诊断结果,以及相应的维修建议。
在测试软件编写时,需要对原有的测试代码进行数据封装和功能抽象,提供测试序列中的测试步骤(Pass/Fail Test类型)调用,并预留对应的命令接口,这样,用户只需要更改相应的命令参数,就能进行功能的切换而不需要重新编译。
与现有技术相比,本发明的优点在于:
由于测试序列可以动态生成,在需要更改测试顺序时,则不必像现有技术那样重新编译,使得测试软件的运行效率和灵活性得以提高。另外,通过测试系统与诊断系统的交互,使得在发现故障时可以进行测试序列的跳转,根据诊断系统的需求进行测试,为诊断系统提供必要的故障信息,而不必顺序执行完所有的测试项目才能进行诊断,提高了故障测试与诊断的效率。
附图说明
图1 本发明的诊断软件接口函数图;
图2 本发明的诊断系统和测试系统之间的交互图;
图3 本发明的测试、诊断工作原理图。
具体实施方式
本发明公开了一种新的技术方案解决了测试序列动态管理的问题,以及测试与诊断相交互的问题。下面做进一步的说明。
为了便于测试使用及软件移植的需要,诊断软件和测试软件信息交互接口设计成动态链接库的形式,如图1所示,输入参数分别是参数代码、时间戳和使能标志,输出参数为诊断状态标志。其中,参数代码表征系统级测试项目和组件级测试项目的特征参数,时间戳是该特征参数获取的时间,使能标志定义了诊断系统是否需要有效激发,诊断状态标志则是诊断系统运行的结果反馈,0表示启动诊断程序未成功;1表示诊断程序运行结束了,诊断结果放在诊断结果表中。
如图2所示,为诊断系统和测试系统之间的交互图。诊断系统和测试系统之间的交互采用测试系统触发诊断系统,诊断系统将最终的结果返给测试系统的方法。测试参数出现异常条件下,通过参数代码、时间戳和诊断使能标志触发诊断软件,诊断软件启动开始诊断;诊断完成后,对诊断结果进行解释有三种情况:1、出故障结果和策略;2、有故障无结果和策略;3、出加测策略,等待新数据指令。诊断系统将最终的诊断结果返给测试系统。
本发明设计了一种测试与诊断相结合的测试序列动态管理方法,其测试、诊断工作原理如图3所示,其步骤为:
步骤一,开发测试步骤对应的测试程序,再在TestStand序列编辑器中开发测试序列文件,以文件扩展名.seq为标识,一个测试序列文件由若干个测试步骤(Step)组成;
步骤二,测试操作员进行必要的用户登陆,进入测试主界面,点击测试序列配置菜单,进入测试序列配置界面,在测试步骤集中选择本次测试需要的测试步骤,并对每个测试步骤的输入输出参数进行设置,对于常用的测试内容可以保存为一个测试序列文件,简化配置过程。然后,输入特定UUT的测试信息,点击测试开始按键,启动自动测试流程,TestStand引擎自动加载用户测试序列并完成对应的测试步骤;
步骤三,执行测试步骤时弹出运行界面,显示被测产品的各种测试信息,包括信号波形、合格指示、实测数据等等,其中与测试报表相关的测试信息被写入到数据库中。如果当前测试步骤的测试结果合格(即测试结果=PASS),加载执行下一个测试步骤,进入步骤四;测试结果不合格(即测试结果=FAIL),进入步骤五;
步骤四,如果测试序列全部执行完成,进入步骤七;否则继续运行下一测试步骤,进入步骤三;
步骤五,置使能标志有效,激发诊断软件。输入参数代码、时间戳和使能标志,诊断系统启动后进行相应的检查无误后,根据输入的故障征兆以及从知识库、数据库中获取的知识按照一定的规则进行推理,得出可能的故障原因,并将这些诊断信息写入诊断结果表和历史诊断表中,并输出诊断状态标志。诊断状态标志有两种状态,分别为0和1,0表示启动诊断程序未成功进入步骤七;1表示诊断程序运行结束,诊断结果放在诊断结果表,进入下一步骤;
步骤六,测试软件解析诊断结果表,按照“序号”字段对诊断结果表中的记录进行索引,找出序号值最大的记录,并对该记录中“策略”字段进行解析,并执行对应的操作。“策略”字段中0,表示诊断出故障结果,提取“定位”字段和“原因”字段的信息,进入步骤七;“策略”字段中1,表示未诊断出结果,也不需要再加测,进入步骤七;“策略”字段中2,表示需要进行加测,测试软件根据诊断信息中的加测项目产生、加载并执行新的测试序列集,以获取诊断软件需要的额外测试信息,最后一个加测序列执行完毕后测试软件输入原始故障发生时相同的参数代码和时间戳,进入步骤五;
步骤七,测试与诊断流程结束,输出结果,根据测试步骤执行情况自动生成测试报告。
上述步骤中,为实现测试序列动态的跳转功能,采用了成功失败型测试类型(Pass/Fail Test)作为所有测试步骤的原型,每一个测试步骤对应动态链接库(DLL)的一个库函数,根据每一个测试步骤的工作状态决定后续测试步骤的走向,如果测试结果为PASS,则顺序执行测试序列中的下一个测试步骤;如果测试结果为FAIL,则进行诊断,根据诊断结果进行加测,获取更多故障信息,以正确定位故障。
加测项目可能有好几个,为了提高效率,前面的加测项目使能标志均置为无效,不激发诊断软件,最后一个加测项目中将使能标志置为有效,表示上次诊断系统要求的加测项目已经全部完成,可以进行二次诊断,参数代码、时间戳和上次故障参数代码和时间戳保持一致,诊断软件将更新后数据提取后再次推理,并得出结论写入数据库中的诊断结果表中,同时将加测项目字段设为空,至此完成一个完整的诊断过程。
在运行阶段,可以对测试序列进行开始、跳转、中断、停止等操作,其中跳转操作是故障诊断软件根据测试策略进行的自动干预,不同的故障跳转到不同的加测序列中。
本发明采用了测试序列的动态管理方法,在需要更改测试顺序时,不必重新编译,使得测试软件的运行效率和灵活性得以提高。而测试与诊断相交互的方法,使得在发现故障时可以进行测试序列的跳转,根据诊断系统的需求进行测试,为诊断系统提供必要的故障信息,而不必顺序执行完所有的测试项目才能进行诊断,提高了故障测试与诊断的效率。

Claims (4)

1.一种测试与诊断相结合的测试序列动态管理方法,其特征在于,包括以下步骤:
步骤一,编写测试各步骤对应的测试程序,在此基础上建立测试序列,并保存为模板;
步骤二,加载执行测试序列,在没有检测出故障的情况下,测试步骤按照设置的测试序列进行,直至测试结束,进入步骤六;当检测出故障时,进行步骤三;
步骤三,启动诊断系统,如果诊断不成功进入步骤六;诊断成功则进入步骤四;
步骤四,根据诊断输出结果,如果需要进行加测,则进入步骤五;如果已定位故障或诊断出错,则进入步骤六;
步骤五,根据诊断系统提供的加测项目产生新的测试序列,并进行加测,加测完成后进入步骤三,进行再次诊断;
步骤六,故障测试与诊断结束,输出测试与诊断结果,以及相应的维修建议。
2.根据权利要求1所述的一种测试与诊断相结合的测试序列动态管理方法,其特征在于:在编写测试程序时,对原有的测试代码进行数据封装和功能抽象,提供测试序列中的测试步骤Pass/Fail Test类型调用,并预留对应的命令接口,用户只需要更改相应的命令参数,就能进行功能的切换而不需要重新编译。
3.根据权利要求1所述的一种测试与诊断相结合的测试序列动态管理方法,其特征在于:所述步骤一中,测试序列可采用手动设置或使用已保存为模板的测试序列。
4.根据权利要求1所述的一种测试与诊断相结合的测试序列动态管理方法,其特征在于:测试系统和诊断系统的交互方式有两个方面:a、测试参数出现异常时,测试系统激发诊断系统,开始诊断;b、诊断完成后,根据诊断系统输出诊断结果与策略,测试系统进行加测,或结束测试。
CN201510788228.6A 2015-11-17 2015-11-17 一种测试与诊断相结合的测试序列动态管理方法 Pending CN106708725A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510788228.6A CN106708725A (zh) 2015-11-17 2015-11-17 一种测试与诊断相结合的测试序列动态管理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510788228.6A CN106708725A (zh) 2015-11-17 2015-11-17 一种测试与诊断相结合的测试序列动态管理方法

Publications (1)

Publication Number Publication Date
CN106708725A true CN106708725A (zh) 2017-05-24

Family

ID=58932035

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510788228.6A Pending CN106708725A (zh) 2015-11-17 2015-11-17 一种测试与诊断相结合的测试序列动态管理方法

Country Status (1)

Country Link
CN (1) CN106708725A (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107733743A (zh) * 2017-11-10 2018-02-23 中国电子科技集团公司第四十研究所 实现以太网总线数据自动测试的方法及系统
CN110262921A (zh) * 2019-07-15 2019-09-20 广州小鹏汽车科技有限公司 一种车辆的车载扬声器的故障诊断方法、系统及装置
CN111260203A (zh) * 2020-01-13 2020-06-09 联宝(合肥)电子科技有限公司 一种数据处理方法、装置及计算机存储介质和电子设备
CN113360364A (zh) * 2020-03-04 2021-09-07 腾讯科技(深圳)有限公司 目标对象的测试方法及装置
CN113934646A (zh) * 2021-12-17 2022-01-14 中建电子商务有限责任公司 一种用于软件测试的系统和方法
CN116485371A (zh) * 2023-04-24 2023-07-25 广州一小时科技有限公司 一种用于表征智能手机维修过程的溯源方法及系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102662831A (zh) * 2012-03-20 2012-09-12 中国人民解放军国防科学技术大学 一种容错系统诊断策略优化方法
CN104062969A (zh) * 2014-07-04 2014-09-24 清华大学苏州汽车研究院(吴江) 一种汽车硬件在环仿真测试系统和测试方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102662831A (zh) * 2012-03-20 2012-09-12 中国人民解放军国防科学技术大学 一种容错系统诊断策略优化方法
CN104062969A (zh) * 2014-07-04 2014-09-24 清华大学苏州汽车研究院(吴江) 一种汽车硬件在环仿真测试系统和测试方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
向超等: "基于TestStand和ATML的导弹测试序列动态管理机制", 《国防科技工业试验与测试技术发展战略高层论坛》 *

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107733743A (zh) * 2017-11-10 2018-02-23 中国电子科技集团公司第四十研究所 实现以太网总线数据自动测试的方法及系统
CN110262921A (zh) * 2019-07-15 2019-09-20 广州小鹏汽车科技有限公司 一种车辆的车载扬声器的故障诊断方法、系统及装置
CN111260203A (zh) * 2020-01-13 2020-06-09 联宝(合肥)电子科技有限公司 一种数据处理方法、装置及计算机存储介质和电子设备
CN111260203B (zh) * 2020-01-13 2022-06-10 联宝(合肥)电子科技有限公司 一种数据处理方法、装置及计算机存储介质和电子设备
CN113360364A (zh) * 2020-03-04 2021-09-07 腾讯科技(深圳)有限公司 目标对象的测试方法及装置
CN113360364B (zh) * 2020-03-04 2024-04-19 腾讯科技(深圳)有限公司 目标对象的测试方法及装置
CN113934646A (zh) * 2021-12-17 2022-01-14 中建电子商务有限责任公司 一种用于软件测试的系统和方法
CN116485371A (zh) * 2023-04-24 2023-07-25 广州一小时科技有限公司 一种用于表征智能手机维修过程的溯源方法及系统
CN116485371B (zh) * 2023-04-24 2023-11-21 广州一小时科技有限公司 一种用于表征智能手机维修过程的溯源方法及系统

Similar Documents

Publication Publication Date Title
CN106708725A (zh) 一种测试与诊断相结合的测试序列动态管理方法
CN103699489B (zh) 一种基于知识库的软件远程故障诊断与修复方法
CN100401265C (zh) 关键字驱动的自动化测试系统及方法
US20090132860A1 (en) System and method for rapidly diagnosing bugs of system software
US7779053B2 (en) Diagnosis of an automation system
US20070006037A1 (en) Automated test case result analyzer
CN106598871A (zh) Linux下的崩溃文件自动化分析方法及系统
JP6693903B2 (ja) ハードウェア試験装置及びハードウェア試験方法
US6275955B1 (en) Diagnostic software for facilitating flowchart programming
CN103678116A (zh) 用于促进自动化程序测试的方法和系统
CN114924737A (zh) 一种电池管理系统源代码集成测试方法、测试装置及电子设备
CN105630661A (zh) 用于自动化跨系统程序调试的方法和装置
US20100241246A1 (en) Plant control system and interlock factor specifying method
CN112162908B (zh) 基于字节码注入技术的程序调用链路监控实现方法及装置
CN111258915B (zh) 一种针对plc程序进行自动化单元测试的方法
CN112685320A (zh) 一种基于多候选程序的软件缺陷修复方法及装置
CN110990177A (zh) 故障修复方法、装置、系统、存储介质及电子设备
CN115080387A (zh) 一种前端可视化调试方法、系统、设备及可读存储介质
CN110795142B (zh) 一种配置文件的生成方法及装置
WO2007086113A1 (ja) プラント制御システム
JP2020009207A (ja) システム異常操作検出装置、方法およびプログラム
CN117742218B (zh) 一种单片机功能检测方法及系统
Kuhn et al. Ordered t-way combinations for testing state-based systems
CN113297093A (zh) 银行软件的测试方法及装置
CN111258792A (zh) 一种基于目标模型的日志记录和错误分析工具

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20170524

WD01 Invention patent application deemed withdrawn after publication