CN105260191A - 一种基于配置的测试程序与操作员界面数据交互方法 - Google Patents
一种基于配置的测试程序与操作员界面数据交互方法 Download PDFInfo
- Publication number
- CN105260191A CN105260191A CN201510736955.8A CN201510736955A CN105260191A CN 105260191 A CN105260191 A CN 105260191A CN 201510736955 A CN201510736955 A CN 201510736955A CN 105260191 A CN105260191 A CN 105260191A
- Authority
- CN
- China
- Prior art keywords
- data
- test
- configuration
- operator interface
- source component
- 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.)
- Granted
Links
Landscapes
- Debugging And Monitoring (AREA)
Abstract
本发明提供了一种基于配置的测试程序与操作员界面数据交互方法,通过设置一个测试数据配置工具帮助用户将测试数据组织规划成符合逻辑、易于调用的数据结构体并将其保存生成一个测试程序配置文件,用户可以针对实际测试需求对测试数据进行针对性增添或修改,方便适应测试系统的扩展性。通过设置数据存取模块定义了统一的数据存取接口函数,支持用户多样化的数据处理需求。数据源组件自动解析测试数据配置文件并允许用户通过配置的方式将测试数据与操作员界面中的数据处理单元进行绑定,最大程度上降低了代码开销。该方法将操作员界面与测试程序彻底分割,操作员界面开发人员无需关心测试程序,二者可以采用并行开发方式,提高开发效率。
Description
技术领域
本发明涉及计算机程序领域,尤其涉及一种基于配置的测试程序与操作员界面数据交互方法。
背景技术
测试程序是指按照一定测试流程实现仪器控制、数据采集及通讯等功能并最终完成测试结果获取的一种计算机程序。操作员界面是指提供给自动测试系统终端用户使用的应用程序界面,设计合理的操作员界面能够大大提高自动测试系统的可靠性、实用性和实时性。定制功能完备、行业针对性强的操作员界面是自动测试系统软件开发的重要环节之一,而如何使得测试程序与操作员界面之间进行友好的数据交互,则是定制操作员界面无可回避的技术问题。
目前用于测试程序与操作员界面数据交互的技术多种多样,但其实现方法主要有以下两种:第一种是纯编码式开发,使用某种编程语言将操作员界面与测试程序内置到同一个测试软件中。操作员界面与测试程序不仅被同时开发出来并且相互依存,二者之间的数据交互以测试流程为主导通过编码的方式出现在整个测试软件的开发周期;第二种是采用平台化自动测试系统软件开发方式,首先采用某种平台工具开发出测试程序,然后为测试程序定制相适应的操作员界面。操作员界面利用该平台提供的相应接口API完成与测试程序之间的数据交互。上述两种方法都直接或间接导致了测试数据交互的固化,从而无法很好的适应测试系统的扩展性,使得操作员界面不得不反复编码用以满足测试程序中任何测试数据细节的变化带来的新需求。
采用第一种方法时,由于测试数据的处理贯穿整个测试程序的编码过程,使得操作员界面乃至整个测试软件的设计和开发都变得非常繁复。而且当测试程序或操作员界面中的任何一个发生改变时,整个测试软件都需要被重新编译,这将导致测试软件的开发效率低下、可维护性非常差,几乎不可重用。采用第二种方法虽然初步实现了测试程序与操作员界面之间的解耦,对于测试软件的开发有了很大程度上的提升,但在操作员界面与测试程序之间的数据交互方面采用的仍然是事件驱动或函数回调等编程方式。因此这种开发方式依然存在工作量大、复用粒度(函数级)小等问题。而且需要购买通用测试软件平台,还需软件商对开发人员进行一定的培训。同时,操作员界面定制工作需要由同一个测试程序开发人员来完成,因此对测试程序和操作员界面只能采用串行开发方式。
发明内容
针对现有的测试程序与操作员界面数据交互方法存在的设计和开发非常复杂,后期处理麻烦,可维护性差的问题,本发明提供了一种基于配置的测试程序与操作员界面数据交互方法。
本发明采用以下的技术方案:
一种基于配置的测试程序与操作员界面数据交互方法,包括:
步骤1:设置测试数据配置工具,测试数据配置工具将测试数据分成三个数据区域,分别为测试参数区域、测试结果区域及测试变量区域,测试参数区域用来存放需要外部输入的数据,测试结果区域用来存放被测项目的结果数据,测试变量区域用来存放测试程序需要用到的测试数据,测试数据配置工具还提供数据复制、粘贴、剪切和编辑功能项;
步骤2:生成测试数据配置文件,利用步骤1中的测试数据配置工具对测试数据进行配置,首先选定数据区域,将测试数据添加到选定的数据区域中,其次选择测试数据的类型,对测试数据进行数据属性的配置,最后当所有的测试数据属性配置完成并保存后,生成测试数据配置文件;
步骤3:调用数据存取模块,数据存取模块定义了统一的数据存取接口函数,测试程序在运行过程中,会创建一块数据存储单元用来存放测试数据,测试程序通过调用数据存取模块中定义的接口函数来实现在数据存储单元中存取数据,数据存取接口函数为各数据区域的测试数据均提供了获取和设置方法;
步骤4:设置数据源组件,数据源组件是测试程序与操作员界面数据交互的核心,通过配置数据源组件实现测试程序与操作员界面的数据交互,首先为数据源组件指定测试数据配置文件,然后在数据源组件中的数据列表中依次添加数据绑定对象并为数据绑定对象指定测试数据,其次根据测试执行需求选择数据访问模式,数据源组件实时读写测试数据或数据源组件通过触发的方式更新测试数据;然后将操作员界面中数据处理单元的数据绑定属性关联到数据源组件中的数据绑定对象;最后通过配置数据源组件的连接方式将数据绑定对象与测试数据进行连接。
优选地,所述测试数据的数据类型有整型、浮点型、字符串、布尔、数组、对象、容器、字节流,测试数据的属性有名称、单位、持久值和动态值。
优选地,所述数据存取接口函数有GetParameter、SetParameter、GetResult、SetResult、GetVariable和SetVariable。
本发明具有的有益效果是:
本发明提供的一种基于配置的测试程序与操作员界面数据交互方法,通过设置一个测试数据配置工具帮助用户将测试数据组织规划成符合逻辑、易于调用的数据结构体并将其保存生成一个测试程序配置文件,用户可以针对实际测试需求对测试数据进行针对性增添或修改,方便适应测试系统的扩展性。通过设置数据存取模块定义了统一的数据存取接口函数,支持用户多样化的数据处理需求。数据源组件自动解析测试数据配置文件并允许用户通过配置的方式将测试数据与操作员界面中的数据处理单元进行绑定,不仅在最大程度上降低了代码开销,而且给用户更直观的效果和更强的操作性。该方法将操作员界面与测试程序彻底分割,操作员界面开发人员无需关心测试程序,二者可以采用并行开发方式,提高开发效率。同时,无论对操作员界面进行什么样的修改,都无需修改测试程序,大大节约了维护成本。
附图说明
图1为测试程序与操作员界面数据交互方法的结构示意图。
图2为测试程序与操作员界面数据交互方法的具体流程图。
图3为测试数据配置工具生成测试数据配置文件的流程图。
图4为数据存取模块和数据源组件之间的数据交互流程图。
图5为配置数据源组件的流程图。
具体实施方式
下面结合附图对本发明进行具体的说明:
结合图1至图5,一种基于配置的测试程序与操作员界面数据交互方法,包括:
步骤1:设置测试数据配置工具,测试数据配置工具将测试数据分成三个数据区域,分别为测试参数区域、测试结果区域及测试变量区域;测试参数区域用来存放需要外部输入的数据,测试结果区域用来存放被测项目的结果数据,测试变量区域用来存放测试程序需要用到的其他测试数据。测试数据配置工具还提供数据复制、粘贴、剪切和编辑等功能项辅助用户完成测试数据的配置,测试数据的类型有整型、浮点型、字符串、布尔、数组、对象、容器、字节流等数据类型,其中容器类型的数据允许存放自己的数据子集,满足不同类型的测试数据需求。测试数据的属性有名称、单位、持久值和动态值等属性,这些属性共同对测试数据进行完整的描述。
步骤2:生成测试数据配置文件,利用步骤1中的测试数据配置工具对测试数据进行配置,首先选定数据区域,将测试数据添加到选定的数据区域中,其次选择测试数据的类型,对测试数据进行数据属性的配置,最后当所有的测试数据属性配置完成并保存后,生成测试数据配置文件;
步骤3:调用数据存取模块,数据存取模块是联系测试程序和测试数据配置文件的纽带,数据存取接口为不同区域的测试数据均提供了获取和设置方法,数据存取模块定义了统一的数据存取接口函数,用户通过接口函数可以轻松访问测试数据,数据存取接口函数包括GetParameter、SetParameter、GetResult、SetResult、GetVariable和SetVariable。测试程序在运行过程中,会创建一块数据存储单元用来存放测试数据,测试程序通过调用数据存取模块中定义的接口函数来实现在数据存储单元中存取数据,数据存取接口函数为不同数据区域的测试数据均提供了获取和设置方法,接口函数中的数据名称参数必须与测试数据配置文件中的数据名称保持一致以保证测试程序执行与操作员界面执行过程中对测试数据的处理相互对应。当接口函数中的设置方法被初次调用时会为该测试数据分配一个唯一的ID用以查询和索引,同时将其存放在数据存储单元中相应位置。操作员界面则调用数据源组件通过绑定对象的测试数据名称对应的ID访问上述数据存储单元中的测试数据。
步骤4:设置数据源组件,数据源组件是测试程序与操作员界面数据交互的核心,是一个将外部数据与内部数据进行连接的桥梁。当外部数据变化时,数据源组件将自动更新内部数据。同样的,当内部数据变化时,数据源组件将自动更新外部数据。数据源组件包括AssociatedDataFile、Bindings和AutoConnect三个属性,通过配置数据源组件可以轻松实现测试程序与操作员界面的数据交互,首先为数据源组件指定测试数据配置文件,然后在数据源组件中的数据列表中依次添加数据绑定对象并为其指定测试数据,其次根据测试执行需求选择数据访问模式,既允许数据源组件实时读写测试数据也可以通过触发的方式更新测试数据;然后将操作员界面中数据处理单元的数据绑定属性关联到数据源组件中的数据绑定对象;最后通过配置数据源组件的连接方式将数据绑定对象与测试数据进行连接。
表1数据存取接口函数
GetParameter | 供测试程序调用,获取测试参数。 |
SetParameter | 供测试程序调用,设置测试参数。 |
GetResult | 供测试程序调用,获取测试结果。 |
SetResult | 供测试程序调用,设置测试结果。 |
GetVariable | 供测试程序调用,获取测试变量。 |
SetVariable | 供测试程序调用,设置测试变量。 |
表2GetParameter接口函数的具体描述
表3SetParameter接口函数的具体描述
表4GetResult接口函数的具体描述
表5SetResult接口函数的具体描述
表6GetVariable接口函数的具体描述
表7SetVariable接口函数的具体描述
表8数据源组件属性
表9数据源组件中绑定项属性
该方法提供一个测试资源配置工具,可以对测试数据进行统一组织管理,方便管理和维护;定义了测试数据描述模型和统一的测试数据存储结构,方便测试数据的存取和使用;提供可视化的测试数据属性编辑功能,加速了自动测试系统软件开发工作。
定义了统一的测试数据存取算法接口,对不同区域的测试数据均提供了“设置”和“获取”方法,使得用户在开发测试程序时对测试数据的存取非常便利和有条理。同时,该算法接口为用户提供了设置测试数据配置文件函数,方便该技术在不同自动化测试系统中使用。
数据源组件支持测试数据根据事件动态双向更新,不仅测试程序对测试数据的修改可以在操作员界面上得到实时显示,而且操作员界面也可以对测试数据进行修改从而影响测试程序的执行。
当然,上述说明并非是对本发明的限制,本发明也并不仅限于上述举例,本技术领域的技术人员在本发明的实质范围内所做出的变化、改型、添加或替换,也应属于本发明的保护范围。
Claims (3)
1.一种基于配置的测试程序与操作员界面数据交互方法,其特征在于,包括:
步骤1:设置测试数据配置工具,测试数据配置工具将测试数据分成三个数据区域,分别为测试参数区域、测试结果区域及测试变量区域,测试参数区域用来存放需要外部输入的数据,测试结果区域用来存放被测项目的结果数据,测试变量区域用来存放测试程序需要用到的测试数据,测试数据配置工具还提供数据复制、粘贴、剪切和编辑功能项;
步骤2:生成测试数据配置文件,利用步骤1中的测试数据配置工具对测试数据进行配置,首先选定数据区域,将测试数据添加到选定的数据区域中,其次选择测试数据的类型,对测试数据进行数据属性的配置,最后当所有的测试数据属性配置完成并保存后,生成测试数据配置文件;
步骤3:调用数据存取模块,数据存取模块定义了统一的数据存取接口函数,测试程序在运行过程中,会创建一块数据存储单元用来存放测试数据,测试程序通过调用数据存取模块中定义的接口函数来实现在数据存储单元中存取数据,数据存取接口函数为各数据区域的测试数据均提供了获取和设置方法;
步骤4:设置数据源组件,数据源组件是测试程序与操作员界面数据交互的核心,通过配置数据源组件实现测试程序与操作员界面的数据交互,首先为数据源组件指定测试数据配置文件,然后在数据源组件中的数据列表中依次添加数据绑定对象并为数据绑定对象指定测试数据,其次根据测试执行需求选择数据访问模式,数据源组件实时读写测试数据或数据源组件通过触发的方式更新测试数据;然后将操作员界面中数据处理单元的数据绑定属性关联到数据源组件中的数据绑定对象;最后通过配置数据源组件的连接方式将数据绑定对象与测试数据进行连接。
2.根据权利要求1所述的一种基于配置的测试程序与操作员界面数据交互方法,其特征在于,所述测试数据的数据类型有整型、浮点型、字符串、布尔、数组、对象、容器、字节流,测试数据的属性有名称、单位、持久值和动态值。
3.根据权利要求1所述的一种基于配置的测试程序与操作员界面数据交互方法,其特征在于,所述数据存取接口函数有GetParameter、SetParameter、GetResult、SetResult、GetVariable和SetVariable。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510736955.8A CN105260191B (zh) | 2015-11-03 | 2015-11-03 | 一种基于配置的测试程序与操作员界面数据交互方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510736955.8A CN105260191B (zh) | 2015-11-03 | 2015-11-03 | 一种基于配置的测试程序与操作员界面数据交互方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105260191A true CN105260191A (zh) | 2016-01-20 |
CN105260191B CN105260191B (zh) | 2018-08-14 |
Family
ID=55099895
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510736955.8A Active CN105260191B (zh) | 2015-11-03 | 2015-11-03 | 一种基于配置的测试程序与操作员界面数据交互方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105260191B (zh) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105975261A (zh) * | 2016-04-28 | 2016-09-28 | 南开大学 | 一种面向统一接口调用的运行时系统及运行方法 |
CN107239331A (zh) * | 2017-05-23 | 2017-10-10 | 中国电子科技集团公司第四十研究所 | 一种并行测试任务的同步触发执行方法 |
CN108363660A (zh) * | 2017-01-26 | 2018-08-03 | 华为技术有限公司 | 一种测试程序生成方法和装置 |
CN109086173A (zh) * | 2017-06-13 | 2018-12-25 | 龙芯中科技术有限公司 | 一种操作系统的设备测试方法、装置和存储介质 |
CN109213671A (zh) * | 2017-06-30 | 2019-01-15 | 中国航发商用航空发动机有限责任公司 | 软件测试方法及其平台 |
CN109783295A (zh) * | 2017-11-10 | 2019-05-21 | 中国电子科技集团公司第四十一研究所 | 基于配置的测试系统自检软件生成方法及装置 |
CN110837469A (zh) * | 2019-11-06 | 2020-02-25 | 恩亿科(北京)数据科技有限公司 | 数据测试方法和装置、测试服务器和存储介质 |
CN112731158A (zh) * | 2020-12-18 | 2021-04-30 | 武汉长海高新技术有限公司 | 一种动力电池测试系统数据后处理方法 |
CN113742147A (zh) * | 2021-08-06 | 2021-12-03 | 珠海格力电器股份有限公司 | 一种电器设备自检方法及装置 |
WO2021258349A1 (zh) * | 2020-06-24 | 2021-12-30 | 深圳市大疆创新科技有限公司 | 无人飞行器的测试配置方法及装置、终端设备 |
CN112731158B (zh) * | 2020-12-18 | 2024-05-24 | 武汉长海高新技术有限公司 | 一种动力电池测试系统数据后处理方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101241433A (zh) * | 2008-03-04 | 2008-08-13 | 浪潮集团山东通用软件有限公司 | 一种基于关系型数据库应用程序动态工具条的实现方法 |
CN101872305A (zh) * | 2010-06-08 | 2010-10-27 | 用友软件股份有限公司 | Ui表现和业务逻辑分离方法和系统 |
US20120079451A1 (en) * | 2010-09-29 | 2012-03-29 | Sap Ag | Unified process to design, develop, and configure user interfaces |
-
2015
- 2015-11-03 CN CN201510736955.8A patent/CN105260191B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101241433A (zh) * | 2008-03-04 | 2008-08-13 | 浪潮集团山东通用软件有限公司 | 一种基于关系型数据库应用程序动态工具条的实现方法 |
CN101872305A (zh) * | 2010-06-08 | 2010-10-27 | 用友软件股份有限公司 | Ui表现和业务逻辑分离方法和系统 |
US20120079451A1 (en) * | 2010-09-29 | 2012-03-29 | Sap Ag | Unified process to design, develop, and configure user interfaces |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105975261B (zh) * | 2016-04-28 | 2018-12-18 | 南开大学 | 一种面向统一接口调用的运行时系统及运行方法 |
CN105975261A (zh) * | 2016-04-28 | 2016-09-28 | 南开大学 | 一种面向统一接口调用的运行时系统及运行方法 |
CN108363660B (zh) * | 2017-01-26 | 2021-06-01 | 华为技术有限公司 | 一种测试程序生成方法和装置 |
CN108363660A (zh) * | 2017-01-26 | 2018-08-03 | 华为技术有限公司 | 一种测试程序生成方法和装置 |
CN107239331A (zh) * | 2017-05-23 | 2017-10-10 | 中国电子科技集团公司第四十研究所 | 一种并行测试任务的同步触发执行方法 |
CN107239331B (zh) * | 2017-05-23 | 2019-11-22 | 中国电子科技集团公司第四十一研究所 | 一种并行测试任务的同步触发执行方法 |
CN109086173A (zh) * | 2017-06-13 | 2018-12-25 | 龙芯中科技术有限公司 | 一种操作系统的设备测试方法、装置和存储介质 |
CN109213671A (zh) * | 2017-06-30 | 2019-01-15 | 中国航发商用航空发动机有限责任公司 | 软件测试方法及其平台 |
CN109213671B (zh) * | 2017-06-30 | 2021-08-03 | 中国航发商用航空发动机有限责任公司 | 软件测试方法及其平台 |
CN109783295A (zh) * | 2017-11-10 | 2019-05-21 | 中国电子科技集团公司第四十一研究所 | 基于配置的测试系统自检软件生成方法及装置 |
CN110837469A (zh) * | 2019-11-06 | 2020-02-25 | 恩亿科(北京)数据科技有限公司 | 数据测试方法和装置、测试服务器和存储介质 |
WO2021258349A1 (zh) * | 2020-06-24 | 2021-12-30 | 深圳市大疆创新科技有限公司 | 无人飞行器的测试配置方法及装置、终端设备 |
CN112731158A (zh) * | 2020-12-18 | 2021-04-30 | 武汉长海高新技术有限公司 | 一种动力电池测试系统数据后处理方法 |
CN112731158B (zh) * | 2020-12-18 | 2024-05-24 | 武汉长海高新技术有限公司 | 一种动力电池测试系统数据后处理方法 |
CN113742147A (zh) * | 2021-08-06 | 2021-12-03 | 珠海格力电器股份有限公司 | 一种电器设备自检方法及装置 |
CN113742147B (zh) * | 2021-08-06 | 2024-02-23 | 珠海格力电器股份有限公司 | 一种电器设备自检方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN105260191B (zh) | 2018-08-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105260191A (zh) | 一种基于配置的测试程序与操作员界面数据交互方法 | |
Liao et al. | Data adapter for querying and transformation between SQL and NoSQL database | |
US8244780B1 (en) | Parameter oriented automated database command | |
Dittrich et al. | Hadoop++ making a yellow elephant run like a cheetah (without it even noticing) | |
CN108536761A (zh) | 报表数据查询方法及服务器 | |
CN107463637A (zh) | 一种分布式NewSQL数据库系统和数据储存方法 | |
CN109508355A (zh) | 一种数据抽取方法、系统及终端设备 | |
CN102646040B (zh) | 基于功件和功件树的软件生成方法及装置 | |
CN110134705A (zh) | 一种数据查询方法、缓存服务器及终端 | |
CN105913316A (zh) | 一种规则配置方法和装置 | |
CN105260169A (zh) | 一种跨平台移植python程序的方法及装置 | |
CN101901265A (zh) | 一种虚拟试验数据对象化管理系统 | |
EP3474160A1 (en) | Data analytic systems | |
Kolovos et al. | The epsilon pattern language | |
CN105975258A (zh) | 一种数据字典的管理方法及系统 | |
CN111078728A (zh) | 一种数据库归档模式下跨库查询方法和装置 | |
CN106980617A (zh) | 一种基于json语句操作数据库的方法和系统 | |
Deak et al. | Aloha: A machine learning framework for engineers | |
CN104615668A (zh) | 游戏管理员命令管理平台 | |
Cobbs | Persistence Programming: Are we doing this right? | |
GB2431257A (en) | System and method for accessing data | |
Kashyap et al. | Policy-Based Code Slicing of Database Application Using Semantic Rule-Based Approach | |
CN108572994A (zh) | 一种数据迁移的处理方法及服务器 | |
Inverardi et al. | The use of Ada in the design of distributed systems | |
CN107870857A (zh) | 一种针对查询计划生成器进行测试的方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20220622 Address after: 266555 No. 98 Xiangjiang Road, Huangdao District, Qingdao City, Shandong Province Patentee after: CLP kesiyi Technology Co.,Ltd. Address before: 266555 No. 98 Xiangjiang Road, Qingdao economic and Technological Development Zone, Shandong Patentee before: THE 41ST INSTITUTE OF CHINA ELECTRONICS TECHNOLOGY Group Corp. |
|
TR01 | Transfer of patent right |