CN103559030B - 一种基于三态选择树的仪器自测试显示组件构造方法 - Google Patents

一种基于三态选择树的仪器自测试显示组件构造方法 Download PDF

Info

Publication number
CN103559030B
CN103559030B CN201310517391.XA CN201310517391A CN103559030B CN 103559030 B CN103559030 B CN 103559030B CN 201310517391 A CN201310517391 A CN 201310517391A CN 103559030 B CN103559030 B CN 103559030B
Authority
CN
China
Prior art keywords
state
node
self
test
tri
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
Application number
CN201310517391.XA
Other languages
English (en)
Other versions
CN103559030A (zh
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.)
CLP Kesiyi Technology Co Ltd
Original Assignee
CETC 41 Institute
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 CETC 41 Institute filed Critical CETC 41 Institute
Priority to CN201310517391.XA priority Critical patent/CN103559030B/zh
Publication of CN103559030A publication Critical patent/CN103559030A/zh
Application granted granted Critical
Publication of CN103559030B publication Critical patent/CN103559030B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

本发明提供一种基于三态选择树的仪器自测试显示组件构造方法,具体步骤为:步骤1为汇总仪器整机自测试项目及逻辑关系;步骤2为创建空的三态选择树;步骤3为根据步骤1整理的自测试项目及逻辑关系,将整机名称、整件名称、部件名称、自测试项名称作为树的一个结点插入到三态选择树中;步骤4为采用树的中序遍历算法依次访问各结点,构建三态选择树中各结点的三态选择关系;步骤5为根据用户选择的测试结点,对测试项进行测试。采用上述方案,仪器的自测试项目逻辑层次清晰、结构合理、操作简捷方便,可以实时查看仪器状态,缩短故障检测与隔离时间,提高系统可用性,降低仪器的使用维护费用。

Description

一种基于三态选择树的仪器自测试显示组件构造方法
技术领域
本发明属于计算机应用技术领域,尤其涉及的是一种基于三态选择树的仪器自测试显示组件构造方法。
背景技术
随着科学技术的不断发展,人类社会已经步入了信息化时代,对仪器的要求更高,依赖性也更强。自测试功能是现代仪器的一个显著特点,是否是智能仪器且衡量智能仪器水平高低的标志之一是它的自测试自诊断功能,因此,在仪器的设计过程中,使其具有良好的自测试自诊断能力是非常重要的。仪器复杂性的增加给其自测试显示组件的设计带来了诸多问题,如自测试条目繁多,逻辑关系复杂、自测试时间长、无法快速准确定位到自测试项及灵活手动配置自测试项等,因此仪器的自测试显示组件设计逐渐引起了人们的高度重视。
目前,已有的仪器自测试显示组件的构造方法主要有以下两种:一种是采用自动测试与选择测试单元项相结合的方法:这种方法对显示组件设计要求不高,只需提供一个自动测试按键和一个单元测试选择框。用户可以选择一键自动全部测试或者选择其中某一项进行实时测试。另一种是采用列表显示的方法:将仪器所有自测试项目按单元分类,用户可以根据需要通过浏览列表手动配置选择自测试项目,进而进行仪器的自测试功能。
采用自动测试与选择测试单元项相结合的方法,主要缺点是:1.对于自测试项数目少的仪器,可以满足要求,随着仪器复杂度的提高,自测试项数目的增加,选择自测试项比较繁琐。2.自测试项没有按单元分类,层次不够清晰。3.无法进行整件、部件有关的功能自测试。
采用列表显示的方法,主要缺点是:1.自测试项选择比较麻烦,需要浏览整个列表。2.选择某一部件进行自测试时需要依次选择该部件下所有自测试项。3.对于复杂仪器,自测试项数目较多时,列表太长,层次不够清晰。4.自测试结果显示样式单一,不能够实时显示某一项测试结果。
因此,现有技术存在缺陷,需要改进。
发明内容
本发明所要解决的技术问题是针对现有技术的不足,提供一种基于三态选择树的仪器自测试显示组件构造方法。
本发明的技术方案如下:
一种基于三态选择树的仪器自测试显示组件构造方法,其中,包括以下步骤:
步骤一:汇总仪器整机自测试项目,定义整机名称、整件名称、部件名称、自测试项目名称,明确整机、整件、部件与自测试项目之间的逻辑关系;
步骤二:创建空的三态选择树;
步骤三:根据所述自测试项目及所述逻辑关系,将整机名称、整件名称、部件名称、自测试项目名称作为树的一个结点插入到三态选择树中,其中,所述自测试项目作为叶结点插入;定义所述自测试项目的测试函数,在树的叶结点中定义函数指针,指向对应的自测试函数;
步骤四:在三态选择树中选择需要测试的整件或者部件、自测试项目结点,采用树的中序遍历算法依次访问其它结点,构建三态选择树中各结点的三态选择关系,确定其它结点的状态;
步骤五:根据所述确定的其它结点的状态,对选中的自测试项目调用自测试函数进行测试。
所述的自测试显示组件构造方法,其中,所述步骤一中,所述整机名称为需要进行自测试的仪器名称,一个整机包括若干整件,一个整件包括若干部件,一个部件包括若干自测试项。
所述的自测试显示组件构造方法,其中所述步骤二中,所述三态选择树以二叉链表作为存储结构,并将所述二叉链表中结点状态初始化设定为非选中状态。
所述的自测试显示组件构造方法,其中,所述步骤三中,所述将整机名称、整件名称、部件名称、自测试项名称插入到三态选择树中,具体步骤为:
步骤3A:只将叶结点作为自测试项目,为其定义函数指针;
步骤3B:整件名称和部件名称是自测试项目在逻辑上的归属,是其父结点;
步骤3C:父结点选中,则父结点下所有子结点自动为选中状态;父结点下某个子结点选中,父结点自动为部分选中状态。
所述的自测试显示组件构造方法,其中,所述步骤四中,所述构建三态选择树中各结点的三态选择关系具体为:
步骤4A:改变非叶结点状态,首先设置其子结点的状态与非叶结点的状态一致,其次搜索非叶结点的子结点,递归处理子结点的子结点和兄弟结点,最后搜索非叶结点的兄弟结点,递归处理兄弟结点的父结点和父结点的父结点,如果非叶结点的状态和兄弟结点状态一致,则父结点状态和非叶结点状态一致,否则,父结点状态为部分选中状态;
步骤4B:改变叶结点状态,首先搜索叶结点的兄弟结点,如果和兄弟结点状态一致,则父结点状态和叶结点状态一致,否则,父结点状态为部分选中状态,最后递归处理父结点的兄弟结点和其父结点。
本发明基于三态选择树,结构清晰,能够方便展开、收起、选择、取消自测试项,能够按整件、部件为单位选择测试项,每一个自测试项测试完毕,可以实时显示结果,并根据选择状态和测试结果自动逻辑运算部件、整件及整机的自测试结果仪器的自测试项目逻辑层次清晰、结构合理、操作简捷方便,可以及时、快速、准确地定位与检测故障,实时查看仪器状态,提高执行任务的可靠性与安全性,缩短故障检测与隔离时间,进而减少维修时间,提高系统可用性,降低仪器的使用维护费用。
附图说明
图1为本发明中树的结构示意图。
图2为本发明中三态选择树的存储结构示意图。
图3为本发明一实施例实现方法示意图。
图4为图3中创建的三态选择树示意图。
图5为图3中构建结点三态选择关系流程图。
具体实施方式
以下结合附图和具体实施例,对本发明进行详细说明。
实施例1
如图1所示,本申请中的树是数据结构中用于解决选择和显示项目内容问题的经典方法,而三态选择树是为解决自测试这样多态选择问题而改进的数据结构。图1为树的一个示例。一棵树只有一个根结点A,根结点A之外的结点称为子结点B、C、D、E,每个子结点只有一个父结点,B、C、E的父结点为A,D的父结点为C,没有子结点的结点称为叶结点B、D、E。改进的三态选择树每个结点有三种状态,选中、非选中、部分选中。三态选择树采用二叉链表法进行存储,链表中结点的两个链域分别指向第一个孩子结点和下一个兄弟结点,并保留空间存储结点当前状态。其存储结构如图2所示,结点的S1区域为链域,指向第一个孩子结点,S2区域存储结点名称,S3区域为链域,指向下一个兄弟结点,S4区域存储结点当前状态。结点N2为结点N1的孩子结点,结点N3为结点N2的兄弟结点,结点N4为结点N3的孩子结点,结点N5为结点N3的兄弟结点。
如图3所示,包括以下步骤:
步骤1为汇总仪器整机自测试项目,明确整机、整件(电路板、微波件)、部件(电路模块)、自测试项之间的逻辑关系。
步骤2为创建空的三态选择树。该三态选择树以二叉链表作为存储结构,结点状态初始化为非选中状态。
步骤3为根据步骤1整理的自测试项目及逻辑关系,将整机名称、整件名称、部件名称、自测试项名称作为树的一个结点插入到三态选择树中。其中,整机名称作为三态选择树的根结点插入,自测试项名称作为叶结点插入,整件名称和部件名称作为叶结点的父结点插入。定义自测试项的测试函数,在树的叶结点中定义函数指针,指向对应的自测试函数。
步骤4为在三态选择树中选择需要测试的整件或者部件、自测试项等结点,采用树的中序遍历算法依次访问其它结点,构建三态选择树中各结点的三态选择关系,确定其它结点的状态。
步骤5为根据步骤4确定的结点状态,对选中的自测试项调用自测试函数进行测试。
具体地,所述步骤1中:所述整机名称是指所要进行自测试的仪器名称,一个整机可以包括若干整件,一个整件可以包括若干部件,一个部件可以包括若干自测试项。
具体地,所述步骤3中:所述自测试项名称作为叶结点,只有叶结点才能作为自测试项,为其分配自测试函数指针。整件名称和部件名称是自测试项在逻辑上的归属,是其父结点。逻辑关系为:父结点选中,则父结点下所有子结点自动为选中状态;父结点下某个子结点选中,父结点自动为部分选中状态。
具体地,所述步骤4具体包括:
步骤41:如果改变的是非叶结点状态,首先设置其子结点的状态与非叶结点的状态一致,其次搜索非叶结点的子结点,递归处理子结点的子结点和兄弟结点,最后搜索非叶结点的兄弟结点,递归处理兄弟结点的父结点和父结点的父结点,如果非叶结点的状态和兄弟结点状态一致,则父结点状态和非叶结点状态一致,否则,父结点状态为部分选中状态。
步骤42:如果改变的是叶结点状态,首先搜索叶结点的兄弟结点。如果和兄弟结点状态一致,则父结点状态和叶结点状态一致,否则,父结点状态为部分选中状态。最后递归处理父结点的兄弟结点和其父结点。
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施例对本发明作进一步详细的说明。
如图4所示,为具体实施例中,创建的三态选择树示意图:
第一步,用户设置303结点为选中状态。
第二步,判断303结点是否是叶结点。
第三步,设置304、305、306结点为选中状态。
第四步,判断303结点和其兄弟结点307、311的状态是否一致。
第五步,状态不一致,置303结点的父结点302为部分选中状态。
第六步,判断302结点的兄弟结点何其状态是否一致。
第七步,置302结点的父结点301为部分选中状态。
采用这种表示方法是为了表述的方便。以用户进行I通道增益DAC部件自测试为例,对本发明创建的三态选择树6中各结点构建三态选择关系过程进行更详细的说明,处理步骤如图5所示:
S41:用户进行I通道增益DAC部件的自测试,设置303结点为选中状态;
S42:判断303结点是否是叶结点;
S43:设置304、305、306结点为选中状态;
S44:判断303结点和其兄弟结点307、311的状态是否一致;
S45:状态不一致,置303结点的父结点302为部分选中状态;
S46:判断302结点的兄弟结点和其状态是否一致;
S47:置302结点的父结点301为部分选中状态。
实施例2
在上述实施例的基础上,如图3-图5所示,一种基于三态选择树的仪器自测试显示组件构造方法,其中,包括以下步骤:
步骤一:汇总仪器整机自测试项目,定义整机名称、整件名称、部件名称、自测试项目名称,明确整机、整件、部件与自测试项目之间的逻辑关系;
步骤二:创建空的三态选择树;
步骤三:根据所述自测试项目及所述逻辑关系,将整机名称、整件名称、部件名称、自测试项目名称作为树的一个结点插入到三态选择树中,其中,所述自测试项目作为叶结点插入;定义所述自测试项目的测试函数,在树的叶结点中定义函数指针,指向对应的自测试函数;
步骤四:在三态选择树中选择需要测试的整件或者部件、自测试项目结点,采用树的中序遍历算法依次访问其它结点,构建三态选择树中各结点的三态选择关系,确定其它结点的状态;
步骤五:根据所述确定的其它结点的状态,对选中的自测试项目调用自测试函数进行测试。
所述的自测试显示组件构造方法,其中,所述步骤一中,所述整机名称为需要进行自测试的仪器名称,一个整机包括若干整件,一个整件包括若干部件,一个部件包括若干自测试项。
所述的自测试显示组件构造方法,其中所述步骤二中,所述三态选择树以二叉链表作为存储结构,并将所述二叉链表中结点状态初始化设定为非选中状态。
所述的自测试显示组件构造方法,其中,所述步骤三中,所述将整机名称、整件名称、部件名称、自测试项名称插入到三态选择树中,具体步骤为:
步骤3A:只将叶结点作为自测试项目,为其定义函数指针;
步骤3B:整件名称和部件名称是自测试项目在逻辑上的归属,是其父结点;
步骤3C:父结点选中,则父结点下所有子结点自动为选中状态;父结点下某个子结点选中,父结点自动为部分选中状态。
所述的自测试显示组件构造方法,其中,所述步骤四中,所述构建三态选择树中各结点的三态选择关系具体为:
步骤4A:改变非叶结点状态,首先设置其子结点的状态与非叶结点的状态一致,其次搜索非叶结点的子结点,递归处理子结点的子结点和兄弟结点,最后搜索非叶结点的兄弟结点,递归处理兄弟结点的父结点和父结点的父结点,如果非叶结点的状态和兄弟结点状态一致,则父结点状态和非叶结点状态一致,否则,父结点状态为部分选中状态;
步骤4B:改变叶结点状态,首先搜索叶结点的兄弟结点,如果和兄弟结点状态一致,则父结点状态和叶结点状态一致,否则,父结点状态为部分选中状态,最后递归处理父结点的兄弟结点和其父结点。
本发明基于三态选择树,结构清晰,能够方便展开、收起、选择、取消自测试项,能够按整件、部件为单位选择测试项,每一个自测试项测试完毕,可以实时显示结果,并根据选择状态和测试结果自动逻辑运算部件、整件及整机的自测试结果仪器的自测试项目逻辑层次清晰、结构合理、操作简捷方便,可以及时、快速、准确地定位与检测故障,实时查看仪器状态,提高执行任务的可靠性与安全性,缩短故障检测与隔离时间,进而减少维修时间,提高系统可用性,降低仪器的使用维护费用。
应当理解的是,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,而所有这些改进和变换都应属于本发明所附权利要求的保护范围。

Claims (2)

1.一种基于三态选择树的仪器自测试显示组件构造方法,其特征在于,包括以下步骤:
步骤一:汇总仪器整机自测试项目,定义整机名称、整件名称、部件名称、自测试项目名称,明确整机、整件、部件与自测试项目之间的逻辑关系;
步骤二:创建空的三态选择树;所述三态选择树以二叉链表作为存储结构,并将所述二叉链表中结点状态初始化设定为非选中状态;
步骤三:根据所述自测试项目及所述逻辑关系,将整机名称、整件名称、部件名称、自测试项目名称作为树的一个结点插入到三态选择树中,其中,所述自测试项目作为叶结点插入;定义所述自测试项目的测试函数,在树的叶结点中定义函数指针,指向对应的自测试函数;具体步骤为:
步骤3A:只将叶结点作为自测试项目,为其定义函数指针;
步骤3B:整件名称和部件名称是自测试项目在逻辑上的归属,是其父结点;
步骤3C:父结点选中,则父结点下所有子结点自动为选中状态;父结点下某个子结点选中,父结点自动为部分选中状态;
步骤四:在三态选择树中选择需要测试的整件或者部件、自测试项目结点,采用树的中序遍历算法依次访问其它结点,构建三态选择树中各结点的三态选择关系,确定其它结点的状态;所述构建三态选择树中各结点的三态选择关系具体为:
步骤4A:改变非叶结点状态,首先设置其子结点的状态与非叶结点的状态一致,其次搜索非叶结点的子结点,递归处理子结点的子结点和兄弟结点,最后搜索非叶结点的兄弟结点,递归处理兄弟结点的父结点和父结点的父结点,如果非叶结点的状态和兄弟结点状态一致,则父结点状态和非叶结点状态一致,否则,父结点状态为部分选中状态;
步骤4B:改变叶结点状态,首先搜索叶结点的兄弟结点,如果和兄弟结点状态一致,则父结点状态和叶结点状态一致,否则,父结点状态为部分选中状态,最后递归处理父结点的兄弟结点和其父结点;
步骤五:根据所述确定的其它结点的状态,对选中的自测试项目调用自测试函数进行测试。
2.如权利要求1所述的自测试显示组件构造方法,其特征在于,所述步骤一中,所述整机名称为需要进行自测试的仪器名称,一个整机包括若干整件,一个整件包括若干部件,一个部件包括若干自测试项。
CN201310517391.XA 2013-10-28 2013-10-28 一种基于三态选择树的仪器自测试显示组件构造方法 Active CN103559030B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310517391.XA CN103559030B (zh) 2013-10-28 2013-10-28 一种基于三态选择树的仪器自测试显示组件构造方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310517391.XA CN103559030B (zh) 2013-10-28 2013-10-28 一种基于三态选择树的仪器自测试显示组件构造方法

Publications (2)

Publication Number Publication Date
CN103559030A CN103559030A (zh) 2014-02-05
CN103559030B true CN103559030B (zh) 2017-01-04

Family

ID=50013286

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310517391.XA Active CN103559030B (zh) 2013-10-28 2013-10-28 一种基于三态选择树的仪器自测试显示组件构造方法

Country Status (1)

Country Link
CN (1) CN103559030B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113687872B (zh) * 2021-07-19 2024-03-29 三六零数字安全科技集团有限公司 选择组件控制方法、设备、存储介质及装置
CN116451917A (zh) * 2022-01-05 2023-07-18 中兴通讯股份有限公司 产品测试方法、装置、计算机设备及存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5977971A (en) * 1994-12-13 1999-11-02 Microsoft Corporation Tree view control
CN1826536A (zh) * 2003-06-12 2006-08-30 泰拉丁公司 具有容易修改的软件的自动测试系统
CN1929393A (zh) * 2005-09-07 2007-03-14 中兴通讯股份有限公司 一种网络优化系统中网元对象的三态树呈现和定位方法
CN101180603A (zh) * 2005-04-14 2008-05-14 微软公司 用于以显式排除来指定范围的计算机输入控件
CN101364239A (zh) * 2008-10-13 2009-02-11 中国科学院计算技术研究所 一种分类目录自动构建方法及相关系统
CN102331970A (zh) * 2011-07-28 2012-01-25 北京航空航天大学 面向安全苛刻系统的自动化测试资源管理方法及其平台

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5977971A (en) * 1994-12-13 1999-11-02 Microsoft Corporation Tree view control
CN1826536A (zh) * 2003-06-12 2006-08-30 泰拉丁公司 具有容易修改的软件的自动测试系统
CN101180603A (zh) * 2005-04-14 2008-05-14 微软公司 用于以显式排除来指定范围的计算机输入控件
CN1929393A (zh) * 2005-09-07 2007-03-14 中兴通讯股份有限公司 一种网络优化系统中网元对象的三态树呈现和定位方法
CN101364239A (zh) * 2008-10-13 2009-02-11 中国科学院计算技术研究所 一种分类目录自动构建方法及相关系统
CN102331970A (zh) * 2011-07-28 2012-01-25 北京航空航天大学 面向安全苛刻系统的自动化测试资源管理方法及其平台

Also Published As

Publication number Publication date
CN103559030A (zh) 2014-02-05

Similar Documents

Publication Publication Date Title
CN104737154B (zh) 关联信息传播系统
CN103914370B (zh) 基于可扩展标记语言xml配置文件的测试方法及装置
CN103761276B (zh) 一种树形结构数据比较的展示方法和装置
CN106557413A (zh) 基于代码覆盖率获取测试用例的方法和设备
CN103268287B (zh) 检测内存泄露的方法与装置
CN106649100A (zh) 一种自动化测试方法及系统
CN108399130A (zh) 自动生成测试案例的方法、装置、设备及可读存储介质
CN102023861A (zh) 测试脚本及测试套件生成的方法和系统
CN106326125B (zh) 一种测试用例生成方法
CN103744647B (zh) 一种基于工作流可视化开发工具的Java工作流开发系统及其方法
CN103761189B (zh) 一种测试用例管理方法及系统
CN104516813B (zh) 网络页面的测试节点的选取方法和装置
CN105187608B (zh) 一种获取移动终端上应用程序耗电量的方法和装置
CN102968375B (zh) 基于关联规则挖掘的不可达路径检测方法
CN104699613B (zh) 一种航天器测试需求自动生成系统及其方法
US20120266121A1 (en) Method to determine high level power distribution and interface problems in complex integrated circuits
CN104063310B (zh) Web前端质量检测方法与装置
CN103984806B (zh) 智能变电站scd中设备输入虚端子的图形化生成方法
CN104182347A (zh) 一种基于自动化测试平台的测试需求自动分析方法
CN103559030B (zh) 一种基于三态选择树的仪器自测试显示组件构造方法
CN109284152A (zh) 一种菜单可视化配置方法、设备及计算机可读存储介质
CN104615544A (zh) 面向问题的gui软件关联功能分析方法及装置
CN107080945A (zh) 测试游戏中人工智能行为的方法、装置及电子设备
CN106681905A (zh) 软件测试装置及其软件测试方法
CN105022692A (zh) 一种死锁检测验证方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20190304

Address after: 266000 No. 98 Xiangjiang Road, Huangdao District, Qingdao City, Shandong Province

Patentee after: China Electronics Technology Instrument and Meter Co., Ltd.

Address before: 266555 No. 98 Xiangjiang Road, Qingdao economic and Technological Development Zone, Shandong

Patentee before: The 41st Institute of CETC

CP01 Change in the name or title of a patent holder
CP01 Change in the name or title of a patent holder

Address after: 266000 No. 98 Xiangjiang Road, Huangdao District, Qingdao City, Shandong Province

Patentee after: CLP kesiyi Technology Co.,Ltd.

Address before: 266000 No. 98 Xiangjiang Road, Huangdao District, Qingdao City, Shandong Province

Patentee before: CHINA ELECTRONIC TECHNOLOGY INSTRUMENTS Co.,Ltd.