一种基于模块化的测试测量软件开发方法与流程

文档序号:18409179发布日期:2019-08-10 00:47阅读:408来源:国知局
一种基于模块化的测试测量软件开发方法与流程

本发明涉及测试测量行业测试平台搭建软件开发方法,尤其是涉及一种基于模块化的测试测量软件开发方法。



背景技术:

在自动化测试过程中,需要配置i/o设备及外围硬件,定义测试的流程,编排合适的软件交互界面,指定数据保存的方式等。由于自动化测试对象的多样性,不同测试中硬件环境、测试要求、软件界面等,均存在较大的差异。如果针对每个测试需求开发相应的测试软件,则存在开发周期长,重用性差,可维护性差等问题。因此,需要有通用的自动化测试软件平台,使得所有自动化测试需求都在同一个平台上进行实现,避免大量重复的开发工作,易于维护和管理,也能方便地集成新的测试硬件,自定义测试流程或软件界面。

目前市场上已有很多自动化测试软件,如teststand等。但此类软件均存在开发周期长,重用性差,可维护性差;加之现有自动化测试系统开发过程中面临诸多问题:1.系统复杂程度高;2.为保持竞争力并满足市场需求,开发周期缩短;3.功能需求不断增大;传统的测试开发方法,难以满足对测试需求的要求;4.测试测量软件对于的软件人员专业能力的要求比较高,将软件功能和硬件功能高度解藕的需求愈发明显。



技术实现要素:

本发明的目的就是为了克服上述现有技术存在的缺陷而提供一种基于模块化的测试测量软件开发方法。

本发明的目的可以通过以下技术方案来实现:

一种基于模块化的测试测量软件开发方法,包括以下步骤:

1)基于软件开发的操作者框架actorframework设计模式,创建测试对象,实现各个功能的模块化;

2)通过编辑脚本文件来实现不同功能模块的调用,进行快速搭建测试平台;

3)通过选择不同的测试项,进行不同的测试。

优选地,所述的操作者框架适用于多并行任务。

优选地,采用所述操作者框架的模块运行在不同的线程中,相互之间并无同步关系。

优选地,不同的模块之间通过对象同消息实现通信。

优选地,各个所述操作者框架的模块通过访问全局变量引擎,实现数据和消息的通信,所有的通道数据被保存到全局的变量引擎中,以字典方式进行索引和编辑,同时变量引擎具有多线程访问保护,带有事件触发功能。

优选地,所述的创建测试对象,实现各个功能的模块化具体过程如下:

先创建顶层应用程序类作为父类,此步完成初始化,记录,报警,启动和停止;

然后可定义串口仪器类作为顶层应用程序类的子类;

最后将具体的rs232/rs485/usb实例化,实现功能模块化。

优选地,所述的步骤2)中的脚本文件包括文本脚本和界面脚本,通过编辑所述的文本脚本即可实现软件功能和界面布局的控制,所述的界面脚本定义了整个测试界面的布局情况,以及每个界面位置上的控件及控件的属性。

优选地,在软件初始化过程中,会读取界面脚本,并根据定义对界面进行初始化,构建出自定义的用户界面,用户界面直接引用现成的构件模块。

与现有技术相比,本发明具有以下优点:

(1)本发明适用于中大型软件开发,actorframework框架能够避免锁死,竞争,增大代码重用性,提高了测试软件的健壮型;

(2)本发明实现了功能的模块化,通过编辑文本即能够实现软件平台的快速搭建,节省时间和人力成本,提高测试效率,减少开发周期。

附图说明

图1为本发明的同步控制软件流程图;

图2为本发明的软件系统示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都应属于本发明保护的范围。

本发明为克服测试测量行业中软件技术中存在的测试操作繁琐、拓展能力差、复用性差等问题,本申请提供一种基于模块化的测试测量软件开发方法。

本发明基于模块化的测试测量软件开发方法,其特征是,所述方法包括:

(1)基于软件开发的操作者框架actorframework设计模式,创建测试对象,实现各个功能的模块化;

(2)只需编辑脚本文件即可实现不同功能模块的调用,从而快速搭建测试平台;

(3)选择不同的测试项,进行不同的测试。

所述步骤(1)中,操作者框架适合于多并行任务的项目。采用操作者框架的模块运行在不同的线程中,相互之间并无同步关系。在这样的项目中,多个并行任务之间往往需要相互通信,操作者框架能够避免锁死、竞争,增大代码重用度。相对于传统的测试软件开发,本方法是通过对象同消息实现不同模块的通讯。所有的通道数据被保存到全局的变量引擎中,以字典方式进行索引和编辑。变量引擎具有多线程访问保护,带有事件触发功能。各个操作者框架的模块通过访问全局变量引擎,实现数据和消息的通信。

把对象作为程序的基本单元。先创建顶层应用程序类作为父类,此步完成初始化,记录,报警,启动和停止。然后可定义串口仪器类作为顶层应用程序类的子类,如io采集类,can通讯类等;再将具体的rs232/rs485/usb等实例化,实现功能模块化,可以被多次重复使用,缩短开发周期。

所述步骤(2)中,模块化测试软件相当于库文件,可在其中添加新增元器件的模块化控制,在需要搭建新的测试平台时,只需编辑文本脚本,即可实现软件功能和界面布局的控制。界面脚本定义了整个测试界面的布局情况,定义了每个界面位置上的控件及控件的属性。在软件初始化过程中,会读取界面脚本,并根据定义对界面进行初始化,构建出自定义的用户界面。用户界面直接引用现成的构件模块,无需编程开发,大大节省了开发时间,提高软件的复用性。

图1所示为本发明基于模块化的测试测量软件开发的流程,具体为:

(1)根据测试需求,编辑测试流程文本,可以完成功能调用以及ui组件;

(2)调用编辑文本即可完成测试功能;

图2为本发明基于模块化的测试测量软件开发的软件系统示意图。

(1)本软件框架是采用操作者框架设计模式,支持多线程并发,能够避免锁死、竞争,增大代码重用性,以此基础开发出目前的测试软件开发方法;

(2)把对象作为程序的基本单元。应用程序类和硬件根是最上层的类,作为父类,子类可以实现继承和修改。rs232/rs485/usb等接口仪器是串口仪器类的实例化,可以把常用的电源、比例阀、负载等支持串口的仪器,在其父类串口仪器类的基础上进行继承和拓展。可以把使用过的所有支持此协议的仪器,全部放入库中,下次可直接进行调用;

举例说明:

使用本方法开发的测试测量软件,在进行新项目开发时,只需要执行以下步骤:

1.编写界面脚本,本步骤也可以通过图形化界面来完成。

2.编写硬件驱动脚本,本步骤也可以通过图形化界面来完成。

3.编写测试序列脚本,本步骤也可以通过图形化界面来完成。

4.运行主测试界面,选择脚本文件所在的文件夹,软件将自动加载以上步骤所定义的脚本,并根据脚本加载指定的界面库与驱动库,向用户展示所需的界面内容。

5.点击自动运行按钮后,软件提示用户选择测试序列脚本文件,并根据该脚本文件的定义,自动执行测试任务。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1