CN104991777B - 实现Web应用程序自动化测试视图化开发的系统及方法 - Google Patents

实现Web应用程序自动化测试视图化开发的系统及方法 Download PDF

Info

Publication number
CN104991777B
CN104991777B CN201510413364.7A CN201510413364A CN104991777B CN 104991777 B CN104991777 B CN 104991777B CN 201510413364 A CN201510413364 A CN 201510413364A CN 104991777 B CN104991777 B CN 104991777B
Authority
CN
China
Prior art keywords
case
view
data
test
debugging
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
CN201510413364.7A
Other languages
English (en)
Other versions
CN104991777A (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.)
PRIMETON INFORMATION TECHNOLOGY Co Ltd
Original Assignee
PRIMETON INFORMATION TECHNOLOGY Co Ltd
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 PRIMETON INFORMATION TECHNOLOGY Co Ltd filed Critical PRIMETON INFORMATION TECHNOLOGY Co Ltd
Priority to CN201510413364.7A priority Critical patent/CN104991777B/zh
Publication of CN104991777A publication Critical patent/CN104991777A/zh
Application granted granted Critical
Publication of CN104991777B publication Critical patent/CN104991777B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

本发明涉及一种实现Web应用程序自动化测试视图化开发的系统及方法,其中包括测试管理模块,用以通过视图化用例设计向导获取用户的视图用例数据并将视图用例数据解析为Web应用程序执行逻辑数据以及调度用例调试和用例执行过程;用例调试代理模块;用例执行代理模块。采用该种结构的实现Web应用程序自动化测试视图化开发的系统及方法,测试人员设计自动化测试用例,不需要掌握过多的代码设计的规范,脱离“测试开发”的尴尬角色,还原为“业务测试”角色,只要根据测试的业务需求,就能在测试系统的视图中完成用例的设计和执行工作。视图化的向导开发方式让测试用例设计变得简单和高效,提高了测试的工作的效率和有效性。

Description

实现Web应用程序自动化测试视图化开发的系统及方法
技术领域
本发明涉及计算机软件技术领域,尤其涉及应用程序测试技术领域,具体是指一种实现Web应用程序自动化测试视图化开发的系统及方法。
背景技术
随着现代社会科学技术的发展,计算机软件系统即企业应用系统的业务的不断进步,企业对于软件系统的质量要求越来越高,随着软件复杂度的增大,传统的手工测试已无法满足软件系统测试的需求。为了攻克手工测试的局限性,研究自动化测试技术已成为企业提升自身软件系统质量安全的必然趋势和手段,应用程序的自动化测试也是当前软件测试界的研究热点之一。
软件自动化测试技术可以用自动化的测试程序替换重复、繁琐的手工测试活动,快速地完成测试环境、测试数据准备工作和应用场景验证的过程。不仅能在更少的时间内完成更多的测试工作,提高了测试的工作效率,还能减少手工测试过程中由于人的主观因素和能力缺陷所导致的错误,提高测试的精确性,减轻应用程序开发周期变短造成的产品质量降低的压力。从而验证应用程序是否满足了功能要求,达到保证程序质量安全的目的。
软件自动化测试设计方法主要有三种方式:第一种方式是人工编辑测试代码,与普通的编程原理类似,就是采用某种特定的编程语言,结合一些代码接口的测试框架,如:Junit、TestNG等等,编写一系列能够在特定环境和平台下运行的测试代码。
第二种方式是采用测试工具利用“面向对象的软件逆工程”技术自动产生测试的代码,主要用于单元测试自动化技术中。根据提供被测源程序的代码,采用OO方式调度目标应用程序,反射出具体的测试方法,然后人工选择需要测试的方法,封装一个或者多个测试代码。
第三种方式就是“录制/回放”脚本技术,这种方式属于大多数GUI自动化测试工具使用的自动化测试技术,主要是由测试人员在测试工具平台环境下,手工对目标应用程序的界面进行一次测试过程,由测试工具记录下手工界面操作的步骤和对象,作为测试代码运用到以后的多次机械重复测试中去,减少重复测试工作量。
在自动化测试设计的前两种方式中,测试人员必须熟练掌握编程语言和规范,具备开发人员的开发能力,才能完成用例测试代码的设计,用例设计难度大;而第三种方式仅限于GUI视图的测试过程,对于代码类型的应用程序不能直接进行测试,效率也比较低;
其次,测试的代码逻辑和数据绑定紧密,耦合度高。用例执行失败时,需要进行逐步代码跟踪才能定位用例的异常,难定位,代码的管理和维护难度大。
因此,以代码方式去设计应用程序的自动化测试用例,对测试人员的要求比较高,甚至会造成测试人员过度沉迷于测试代码的设计,而忘却自己测试的职责,导致测试过多无效的工作,难以保证测试的质量。
发明内容
本发明的目的是克服了上述现有技术的缺点,提供了一种能够实现脱离代码编辑方式、用例设计过程简单快捷、运行稳定可靠、适用范围较为广泛的实现Web应用程序自动化测试视图化开发的系统及方法。
为了实现上述目的,本发明的实现Web应用程序自动化测试视图化开发的系统及方法具有如下构成:
该实现Web应用程序自动化测试视图化开发的系统,其主要特点是,所述的系统包括:
测试管理模块,用以通过视图化用例设计向导获取用户的视图用例数据并将视图用例数据解析为Web应用程序执行逻辑数据以及调度用例调试和用例执行过程;
用例调试代理模块,用以基于Web应用程序执行逻辑数据进行用例调试过程;
用例执行代理模块,用以基于Web应用程序执行逻辑数据进行用例执行过程。
较佳地,所述的测试管理模块包括:
用例视图化设计向导单元,用以通过视图化用例设计向导获取用户的视图用例数据;
用例解析引擎,用以将视图用例数据解析为Web应用程序执行逻辑数据以及将Web应用程序执行逻辑数据反解析为视图用例数据;
用例调试调度引擎,用以在用例调试过程中调度所述的用例调试代理模块;
用例执行调度引擎,用以在用例执行过程中调度所述的用例执行代理模块;
用例结果收集引擎,用以在用例调试过程中和用例执行过程中收集结果数据;
用例数据管理单元,用以存储和管理Web应用程序执行逻辑数据、测试数据、预期结果数据和执行结果数据。
更佳地,所述的测试管理模块还包括:
结果展示模块,用以将收集的结果数据转换为视图展示。
较佳地,所述的视图化用例设计包括用例逻辑设计、用例环境准备配置、用例数据准备配置和用例检查点配置。
较佳地,所述的用例调试代理模块包括用例调试引擎,用以在用例设计完成后提供即时检验用例设计正确性的调试流程;所述的用例执行代理模块包括用例执行引擎,用以提供Web应用程序在运行环境中功能正确性自动回归的流程。
本发明还涉及一种基于所述的系统实现Web应用程序自动化测试视图化开发的方法,其特征在于,所述的方法包括以下步骤:
(1)所述的测试管理模块通过视图化用例设计向导获取用户的视图用例数据并将视图用例数据解析为Web应用程序执行逻辑数据;
(2)所述的测试管理模块将用例调试指令发送至所述的用例调试代理模块;
(3)所述的用例调试代理模块进行调试逻辑初始化后结合Web应用程序执行逻辑数据执行应用程序;
(4)所述的用例调试代理模块比对分析调试结果数据;
(5)所述的测试管理模块将用例执行指令发送至所述的用例执行代理模块;
(6)所述的用例执行代理模块进行执行逻辑初始化后结合Web应用程序执行逻辑数据执行应用程序;
(7)所述的用例执行代理模块比对分析执行结果数据。
较佳地,所述的测试管理模块包括用例视图化设计向导单元和用例解析引擎,所述的测试管理模块通过视图化用例设计向导获取用户的视图用例数据并将视图用例数据解析为Web应用程序执行逻辑数据,包括以下步骤:
(1-1)所述的用例视图化设计向导单元配置用例执行环境初始化的逻辑;
(1-2)所述的用例视图化设计向导单元配置用例所测试的应用程序的调度逻辑;
(1-3)所述的用例解析引擎根据所测试的应用程序的调度逻辑将应用程序的入参数据模型和出参数据模型解析成可配置的视图模型;
(1-4)所述的用例视图化设计向导单元引导用户在视图模型中填入所测试的应用程序的测试数据和预期结果数据;
(1-5)所述的用例视图化设计向导单元配置用例检查点逻辑;
(1-6)所述的用例解析引擎将视图用例数据解析为Web应用程序执行逻辑数据。
更佳地,所述的用例调试代理模块进行调试逻辑初始化后结合Web应用程序执行逻辑数据执行应用程序,包括以下步骤:
(3-1)所述的用例调试代理模块初始化Web应用程序的运行环境;
(3-2)所述的用例调试代理模块获取所测试的应用程序的调度逻辑和入参数据;
(3-3)所述的用例调试代理模块根据所测试的应用程序的调度逻辑调度应用程序并传输入参数据执行应用程序;
所述的用例执行代理模块进行执行逻辑初始化后结合Web应用程序执行逻辑数据执行应用程序,包括以下步骤:
(6-1)所述的用例执行代理模块初始化Web应用程序的运行环境;
(6-2)所述的用例执行代理模块获取所测试的应用程序的调度逻辑和入参数据;
(6-3)所述的用例执行代理模块根据所测试的应用程序的调度逻辑调度应用程序并传输入参数据执行应用程序。
更佳地,所述的用例调试代理模块比对分析调试结果数据,具体为:
所述的用例调试代理模块将实际调试结果数据和预期结果数据比对分析;
所述的用例执行代理模块比对分析执行结果数据,具体为:
所述的用例执行代理模块将实际执行结果数据和预期结果数据比对分析。
更佳地,所述的步骤(4)和(5)之间,还包括以下步骤:
(4-1)所述的用例调试代理模块获取用例检查点逻辑并执行用例检查点的验证;
所述的步骤(7)之后,还包括以下步骤:
(7-1)所述的用例执行代理模块获取用例检查点逻辑并执行用例检查点的验证。
较佳地,所述的测试管理模块包括用例结果收集引擎和结果展示模块,所述的步骤(4)和(5)之间,还包括以下步骤:
(4-2)所述的用例结果收集引擎在用例调试过程中收集结果数据;
(4-3)所述的结果展示模块将用例调试的结果数据以视图化形式展示;
所述的步骤(7)之后,还包括以下步骤:
(7-2)所述的用例结果收集引擎在用例执行过程中收集结果数据;
(7-3)所述的结果展示模块将用例执行的结果数据以视图化形式展示。
采用了该发明中的实现Web应用程序自动化测试视图化开发的系统及方法,用户设计自动化测试用例,不再需要编写测试代码,只需根据用例设计视图向导的引导,便可以简单地完成用例设计过程,实现了零代码化的自动化测试用例视图化的设计模式。同时,用户只要在用例执行视图中点击用例的执行按钮,便可触发用例的执行过程,最终生成用例的执行报告。根据用例的执行报告可以跟踪用例执行的日志、异常,以及检验测试场景的正确性。还有,不同于以往测试逻辑和数据耦合度高的代码管理方式,本发明实现了测试数据和测试逻辑的剥离,测试用例从以往由逻辑和数据组成,转变为只由数据组成,用例管理只需要管理测试数据,不需要管理测试逻辑。测试逻辑则固化为用例可重复调度的测试组件群,只有在用例执行时,以数据驱动方式进行测试组件的组合调度。通过使用本发明构建的自动化测试系统,测试人员设计自动化测试用例,不需要掌握过多的代码设计的规范,脱离“测试开发”的尴尬角色,还原为“业务测试”角色,只要根据测试的业务需求,就能在测试系统的视图中完成用例的设计和执行工作。视图化的向导开发方式让测试用例设计变得简单和高效,提高了测试的工作的效率和有效性。
附图说明
图1为本发明的实现Web应用程序自动化测试视图化开发的系统的总体架构图。
图2为本发明的实现Web应用程序自动化测试视图化开发的方法中的用例执行引擎的流程图。
图3为本发明的实现Web应用程序自动化测试视图化开发的系统和方法中的关于数据仓库管理的数据表设计E-R图。
图4为本发明的实现Web应用程序自动化测试视图化开发的方法实施过程中的部署图。
具体实施方式
为了能够更清楚地描述本发明的技术内容,下面结合具体实施例来进行进一步的描述。
基于云计算的实现Web应用程序自动化测试视图化开发的系统,包括视图化的测试管理模块、用例调试代理模块和用例执行代理模块,其主要特点是,所述的视图化的测试管理模块包括:
用例视图化设计向导单元,提供用例设计的视图向导,视图向导包括用例逻辑设计、用例环境准备配置、用例数据准备配置、用例检查点配置等功能。主要完成被测Web应用程序的执行环境初始化准备,测试数据和预期结果数据准备,应用程序调度逻辑配置,程序执行结果检查点配置的相关工作。
用例解析引擎,提供将视图用例数据解析为Web应用程序执行所需要的逻辑数据的方法,同时,也提供有Web应用程序执行逻辑数据转换为视图用例数据的反解析方法,便于用例展示、维护和更改;
用例调试调度引擎,负责在用例调试的过程中,提供以HTTP协议的方式调度用例调试代理服务的接口,并传递用例调试需要的相关指令和数据;
用例执行调度引擎,负责在用例执行的过程中,同样以HTTP协议的方式调度用例执行代理服务的接口,并传递用例执行需要的相关指令和数据;
用例结果收集引擎:用于用例调试和执行过程中,收集用例执行过程的日志和抛出的异常,统计用例执行的总数量、成功数量和失败数量,收集实际结果数据、预期结果数据和差异结果数据,并将收集的数据封装成视图展示所需要的结果数据对象;
结果展示模块,提供将用例结果数据对象转换为视图展示的方法,包括用例日志展示,异常展示,用例执行统计结果展示,测试数据、预期结果数据和差异数据展示等功能;
用例数据管理单元,用于存储和管理用例逻辑数据、测试数据、预期结果数据和执行结果数据的数据仓库,以此实现用例逻辑和数据的剥离,减低用例设计过程的耦合性;
所述的用例调试代理服务,主要部署在Web应用程序开发环境,主要包括:
用例调试引擎,在用例设计完成之后,提供一个即时检验用例设计正确性的调试流程。用例调试引擎集成了一个用例执行的高效自动化测试程序群,主要包括用例环境初始化程序、用例数据准备程序、被测应用程序调度程序、用例检查点执行程序和数据比对程序。通过这个程序群完成被测应用程序调试过程;
所述的用例执行代理服务,主要部署在Web应用程序的运行环境,包括:
用例执行引擎,提供一个Web应用程序在运行环境中功能正确性自动回归的流程。用例执行引擎也集成了用例调试引擎中用例执行的自动化测试程序群,不同的是,该程序群中增加了Web应用程序运行环境初始化程序、结果邮件群发等自动化程序,主要实现在用例执行之前,先完成Web应用程序运行环境的初始化的操作,然后才进入用例执行流程,最后将执行结果以邮件的方式群发给开发和测试人员,快速完成应用程序的回归过程。
基于上述的基于云计算的实现Web应用程序自动化测试视图化开发的系统和方法,其主要特点是,所述的方法包括视图化用例设计流程、用例调试流程和用例执行流程,所述的视图化用例设计流程,包括以下步骤:
(1)所述的用例视图化设计向导单元中配置用例执行环境初始化的逻辑,包括数据库操作语句和文件操作语句;
(2)所述的用例视图化设计向导单元中配置用例所测试的应用程序调度逻辑,如:被测java应用程序的类路径和方法名;
(3)所述的用例解析引擎,根据配置的被测应用调度逻辑将应用程序的入参数据模型和出参数据模型反射成为可配置的视图模型;
(4)用户在应用程序入参和出参视图模型中填入被测应用程序执行的测试数据和预期结果数据;
(5)所述的用例视图化设计向导单元中配置用例检查点逻辑,包括数据库检查逻辑和文件检查逻辑;
(6)所述的用例解析引擎,根据用例执行的规范将用例视图数据解析为用例执行所需的测试数据;并将解析完成的测试数据存入用例数据仓库;
所述的用例调试流程,包括以下步骤:
(7)用户通过点击用例管理视图中的用例调试按钮,并配置用例调试代理服务的具体IP,端口和应用名称;
(8)所述的用例调试调度引擎根据IP、端口和应用名,封装http请求协议,发送用例执行的指令到调试代理服务;
(9)所述的用例调试引擎根据用例指令从用例数据仓库中获取用例环境初始化逻辑,并执行初始化逻辑,完成用例执行前的环境准备工作;
(10)用例调试引擎根据用例指令从数据仓库中获取被测应用程序调度逻辑和入参数据;
(11)用例调试引擎根据被测应用程序调度逻辑调度应用程序,并传入入参数据,等待应用程序执行完成,收集应用程序返回的实际结果数据;
(12)用例调试引擎根据用例指令从数据仓库中获取预期结果数据,并进行实际结果和预期结果的数据比对过程;
(13)用例调试引擎根据用例指令从数据仓获取用例检查点逻辑,并执行用例检查点的验证;
(14)所述的用例结果收集引擎收集和统计用例执行过程的日志、异常和结果数据,返回用例管理服务;
(15)所述的结果展示模块将用例执行的日志、异常和结果数据展示在结果视图中,便于用户快速定位用例异常;
所述的用例调试流程,包括以下步骤:
(16)用户在系统中配置定时任务,并配置用例执行代理服务的具体IP,端口和应用名称;
(17)定时任务自动化调度所述的用例执行调度引擎根据IP、端口和应用名,封装http请求协议,发送用例执行的指令到执行代理服务;
(18)所述的用例执行引擎初始化Web应用程序的运行环境,并启动运行环境;
(19)接下来同用例调试引擎流程一样,根据用例执行的指令完成用例环境初始化,测试数据准备,被测应用程序调度,实际结果和预期结果数据比对,用例检查点验证的过程;
(20)所述的用例结果收集引擎收集和统计用例执行过程的日志、异常和结果数据,返回用例管理服务;
(21)所述的结果展示模块将用例执行日志、异常和结果数据转化为邮件结果报告,并以邮件的方式把邮件结果报告群发给相关的人员,便于用户时刻掌握应用程序的运行稳定性和正确性。
在实际应用中,本发明的基于云计算的实现Web应用程序自动化测试视图化开发的系统及其方法的具体过程如下:
1、用例视图设计向导
用例视图设计向导是代替直接代码设计的编辑方式,然而,在用例在执行的时候,视图的用例数据最终还是必须转换为具体的测试代码,才能完成应用程序的测试过程。所以视图设计向导的职责是将用例数据按照一定的关联规则进行录入,用例执行的时候才能重新整合为测试逻辑代码,具体过程为如下:
(1)设计用例表,包括用例唯一ID,名称,说明等信息;
(2)设计用例逻辑表,包括唯一ID,被测应用程序名称,调度路径,方法名等信息,并与用例唯一ID形成一对一关联;
(3)设计用例数据表,包括唯一ID,用例的测试数据,预期结果数据等字段,并与用例唯一ID形成多对一或者一对一的关联;
(4)设计用例环境准备表,包括唯一ID,数据库DDL处理语句(update、delete、create语句),处理文件路径,文件处理类型(创建、删除等)等信息,并与用例唯一ID形成多对一关联;
(5)设计用例检查点表,包括唯一ID,数据库检查语句(SQL语句)、文件检查路径,文件名,文件检查类型(文件内容比对,文件是否存在等)等信息,并与用例唯一ID形成多对一关联;
(6)设计用例执行结果表,包括执行编号,用例执行总数,成功数,失败数等信息,并与用例表形成一对多关联,用于存储用例执行结果;
(7)设计用例执行日志表,包括执行编号,用例日志等信息,并与用例表形成一对多关联,用于存放用例执行日志;
(8)设计用例执行异常,包括执行编号,用例异常等信息,并与用例表形成一对多关联,用于存放用例执行日志;
(9)构建用例设计视图向导,视图向导中提供用例信息,用例逻辑,用例数据,用例环境准备,用例检查点等信息表数据的录入,并通过唯一的用例ID关联起来,最后数据录入到对应的数据表;
2、用例解析
用例解析是应用程序自动化测试用例视图化开发的重要环节。前面说过视图的用例数据最终会被转换为代码逻辑,以此完成应用程序的测试过程,该用例解析逻辑根据被测应用程序的编程语言(如:JAVA等语言)封装完成,才能转换为应用程序需要的数据结构和逻辑,主要过程如下:
(10)所述的用例解析引擎在视图数据录入数据库过程中,根据用例数据的参数模型,如数组类型,基本类型,列表类型等,将用例数据模型转换为代码逻辑的参数类型;同时,将用例逻辑解析为应用程序调度的逻辑,如JAVA程序的反射调度逻辑代码;
(11)所述的用例解析引擎同样提供用例代码逻辑和代码数据反解析为视图用例数据的反解析方法,将代码逻辑参数模型反解析为视图参数模型,将应用程序调度逻辑反解析为视图逻辑,便于用例的维护和管理;
3、用例执行流程
实现Web应用程序自动化测试视图化开发的方法中的用例调试引擎和执行引擎都是实现了用例执行的流程,该流程主要实现了应用程序测试过程的执行程序,包括:应用程序执行前环境初始化,应用程序入参数据准备,应用程序调度执行,应用程序执行后的检查点验证,应用程序的实际结果和预期结果数据比对等程序,具体过程如下:
(12)所述的用例执行管理视图上点击用例执行按钮,用例管理服务通过hessian技术封装http访问协议,访问执行代理服务和调试代理服务的用例执行流程,并将需要执行的用例ID集合传递到代理服务端;
(13)所述的执行代理服务接受到用例管理服务的执行请求,则开始启动用例执行流程。如果是执行代理服务,在开始用例执行之前,需要重新准备或者初始化Web应用程序的运行环境,这样可以保证Web应用程序环境的独立性,保证每次用例回归的之间数据都是互不影响的;
(14)所述的用例执行流程启动用例执行时,迭代用例ID集合,通过Junit的junit.textui.TestRunner.run()接口执行单个用例,junit技术可以让每个用例执行的过程是独立的;
(15)执行单个用例,所述的用例执行流程利用用例ID从所述的用例环境初始化表中获取用例的环境准备的语句,包括数据库的DDL语句和文件处理语句,然后执行所获取的DDL语句和文件处理语句,完成用例执行环境初始化;
(16)用例环境初始化完成,所述的用例执行流程利用用例ID从用例逻辑表、用例数据表中获取应用程序的调度逻辑、入参数据和预期结果数据,利用编程语言的反射技术调度应用程序方法名,并传入应用程序需要的入参数据,等待应用程序执行完毕;
(17)应用程序执行完毕,所述的用例执行流程将应用程序返回的实际结果数据与预期结果数据利用equals()的方法进行比较,比较一致则验证正确;否则,应用程序验证错误;
(18)数据比对完成后,所述的用例执行流程利用用例ID获取用例检查点表中用例检查点语句,包括SQL检查语句和文件检查语句,并执行检查语句,获得的结果与预期检查结果进行比较,比较一致则验证正确;否则,检查点验证错误;
(19)用例集执行完成之后,收集用例执行的日志、异常和数据,存入到对应的所述的日志、异常表和结果表,并将执行编号同执行结束标志一起返回到用例管理服务,完成用例执行流程;
4、用例结果展示
(20)所述的用例管理服务收到用例执行完毕的标志,利用用例执行编号从所述的用例执行日志表、异常表和结果表获取用例执行的结果信息;
(21)将获取的日志、异常和结果信息封装成为结果展示的对象,然后将对象按视图模型展示到视图中,方便用例异常定位。
采用了该发明中的实现Web应用程序自动化测试视图化开发的系统及方法,用户设计自动化测试用例,不再需要编写测试代码,只需根据用例设计视图向导的引导,便可以简单地完成用例设计过程,实现了零代码化的自动化测试用例视图化的设计模式。同时,用户只要在用例执行视图中点击用例的执行按钮,便可触发用例的执行过程,最终生成用例的执行报告。根据用例的执行报告可以跟踪用例执行的日志、异常,以及检验测试场景的正确性。还有,不同于以往测试逻辑和数据耦合度高的代码管理方式,本发明实现了测试数据和测试逻辑的剥离,测试用例从以往由逻辑和数据组成,转变为只由数据组成,用例管理只需要管理测试数据,不需要管理测试逻辑。测试逻辑则固化为用例可重复调度的测试组件群,只有在用例执行时,以数据驱动方式进行测试组件的组合调度。通过使用本发明构建的自动化测试系统,测试人员设计自动化测试用例,不需要掌握过多的代码设计的规范,脱离“测试开发”的尴尬角色,还原为“业务测试”角色,只要根据测试的业务需求,就能在测试系统的视图中完成用例的设计和执行工作。视图化的向导开发方式让测试用例设计变得简单和高效,提高了测试的工作的效率和有效性。
在此说明书中,本发明已参照其特定的实施例作了描述。但是,很显然仍可以作出各种修改和变换而不背离本发明的精神和范围。因此,说明书和附图应被认为是说明性的而非限制性的。

Claims (9)

1.一种实现Web应用程序自动化测试视图化开发的系统,其特征在于,所述的系统包括:
测试管理模块,用以通过视图化用例设计向导获取用户的视图用例数据并将视图用例数据解析为Web应用程序执行逻辑数据以及调度用例调试和用例执行过程,所述的测试管理模块包括用例视图化设计向导单元和用例解析引擎,所述的测试管理模块通过视图化用例设计向导获取用户的视图用例数据并将视图用例数据解析为Web应用程序执行逻辑数据,包括以下步骤:
(1-1)所述的用例视图化设计向导单元配置用例执行环境初始化的逻辑;
(1-2)所述的用例视图化设计向导单元配置用例所测试的应用程序的调度逻辑;
(1-3)所述的用例解析引擎根据所测试的应用程序的调度逻辑将应用程序的入参数据模型和出参数据模型解析成可配置的视图模型;
(1-4)所述的用例视图化设计向导单元引导用户在视图模型中填入所测试的应用程序的测试数据和预期结果数据;
(1-5)所述的用例视图化设计向导单元配置用例检查点逻辑;
(1-6)所述的用例解析引擎将视图用例数据解析为Web应用程序执行逻辑数据;
用例调试代理模块,用以基于Web应用程序执行逻辑数据进行用例调试过程,所述的用例调试代理模块进行以下处理:
(3-1)所述的用例调试代理模块初始化Web应用程序的运行环境;
(3-2)所述的用例调试代理模块获取所测试的应用程序的调度逻辑和入参数据;
(3-3)所述的用例调试代理模块根据所测试的应用程序的调度逻辑调度应用程序并传输入参数据执行应用程序;
用例执行代理模块,用以基于Web应用程序执行逻辑数据进行用例执行过程,所述的用例执行代理模块进行以下处理:
(6-1)所述的用例执行代理模块初始化Web应用程序的运行环境;
(6-2)所述的用例执行代理模块获取所测试的应用程序的调度逻辑和入参数据;
(6-3)所述的用例执行代理模块根据所测试的应用程序的调度逻辑调度应用程序并传输入参数据执行应用程序。
2.根据权利要求1所述的实现Web应用程序自动化测试视图化开发的系统,其特征在于,所述的测试管理模块包括:
用例视图化设计向导单元,用以通过视图化用例设计向导获取用户的视图用例数据;
用例解析引擎,用以将视图用例数据解析为Web应用程序执行逻辑数据以及将Web应用程序执行逻辑数据反解析为视图用例数据;
用例调试调度引擎,用以在用例调试过程中调度所述的用例调试代理模块;
用例执行调度引擎,用以在用例执行过程中调度所述的用例执行代理模块;
用例结果收集引擎,用以在用例调试过程中和用例执行过程中收集结果数据;
用例数据管理单元,用以存储和管理Web应用程序执行逻辑数据、测试数据、预期结果数据和执行结果数据。
3.根据权利要求2所述的实现Web应用程序自动化测试视图化开发的系统,其特征在于,所述的测试管理模块还包括:
结果展示模块,用以将收集的结果数据转换为视图展示。
4.根据权利要求1所述的实现Web应用程序自动化测试视图化开发的系统,其特征在于,所述的视图化用例设计包括用例逻辑设计、用例环境准备配置、用例数据准备配置和用例检查点配置。
5.根据权利要求1所述的实现Web应用程序自动化测试视图化开发的系统,其特征在于,所述的用例调试代理模块包括用例调试引擎,用以在用例设计完成后提供即时检验用例设计正确性的调试流程;所述的用例执行代理模块包括用例执行引擎,用以提供Web应用程序在运行环境中功能正确性自动回归的流程。
6.一种基于权利要求1所述的系统实现Web应用程序自动化测试视图化开发的方法,其特征在于,所述的方法包括以下步骤:
(1)所述的测试管理模块包括用例视图化设计向导单元和用例解析引擎,所述的测试管理模块通过视图化用例设计向导获取用户的视图用例数据并将视图用例数据解析为Web应用程序执行逻辑数据,包括以下步骤:
(1-1)所述的用例视图化设计向导单元配置用例执行环境初始化的逻辑;
(1-2)所述的用例视图化设计向导单元配置用例所测试的应用程序的调度逻辑;
(1-3)所述的用例解析引擎根据所测试的应用程序的调度逻辑将应用程序的入参数据模型和出参数据模型解析成可配置的视图模型;
(1-4)所述的用例视图化设计向导单元引导用户在视图模型中填入所测试的应用程序的测试数据和预期结果数据;
(1-5)所述的用例视图化设计向导单元配置用例检查点逻辑;
(1-6)所述的用例解析引擎将视图用例数据解析为Web应用程序执行逻辑数据;
(2)所述的测试管理模块将用例调试指令发送至所述的用例调试代理模块;
(3)所述的用例调试代理模块进行调试逻辑初始化后结合Web应用程序执行逻辑数据执行应用程序,包括以下步骤:
(3-1)所述的用例调试代理模块初始化Web应用程序的运行环境;
(3-2)所述的用例调试代理模块获取所测试的应用程序的调度逻辑和入参数据;
(3-3)所述的用例调试代理模块根据所测试的应用程序的调度逻辑调度应用程序并传输入参数据执行应用程序;
(4)所述的用例调试代理模块比对分析调试结果数据;
(5)所述的测试管理模块将用例执行指令发送至所述的用例执行代理模块;
(6)所述的用例执行代理模块进行执行逻辑初始化后结合Web应用程序执行逻辑数据执行应用程序,包括以下步骤:
(6-1)所述的用例执行代理模块初始化Web应用程序的运行环境;
(6-2)所述的用例执行代理模块获取所测试的应用程序的调度逻辑和入参数据;
(6-3)所述的用例执行代理模块根据所测试的应用程序的调度逻辑调度应用程序并传输入参数据执行应用程序;
(7)所述的用例执行代理模块比对分析执行结果数据。
7.根据权利要求6所述的实现Web应用程序自动化测试视图化开发的方法,其特征在于,所述的用例调试代理模块比对分析调试结果数据,具体为:
所述的用例调试代理模块将实际调试结果数据和预期结果数据比对分析;
所述的用例执行代理模块比对分析执行结果数据,具体为:
所述的用例执行代理模块将实际执行结果数据和预期结果数据比对分析。
8.根据权利要求6所述的实现Web应用程序自动化测试视图化开发的方法,其特征在于,所述的步骤(4)和(5)之间,还包括以下步骤:
(4-1)所述的用例调试代理模块获取用例检查点逻辑并执行用例检查点的验证;
所述的步骤(7)之后,还包括以下步骤:
(7-1)所述的用例执行代理模块获取用例检查点逻辑并执行用例检查点的验证。
9.根据权利要求6所述的实现Web应用程序自动化测试视图化开发的方法,其特征在于,所述的测试管理模块包括用例结果收集引擎和结果展示模块,所述的步骤(4)和(5)之间,还包括以下步骤:
(4-2)所述的用例结果收集引擎在用例调试过程中收集结果数据;
(4-3)所述的结果展示模块将用例调试的结果数据以视图化形式展示;
所述的步骤(7)之后,还包括以下步骤:
(7-2)所述的用例结果收集引擎在用例执行过程中收集结果数据;
(7-3)所述的结果展示模块将用例执行的结果数据以视图化形式展示。
CN201510413364.7A 2015-07-14 2015-07-14 实现Web应用程序自动化测试视图化开发的系统及方法 Active CN104991777B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510413364.7A CN104991777B (zh) 2015-07-14 2015-07-14 实现Web应用程序自动化测试视图化开发的系统及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510413364.7A CN104991777B (zh) 2015-07-14 2015-07-14 实现Web应用程序自动化测试视图化开发的系统及方法

Publications (2)

Publication Number Publication Date
CN104991777A CN104991777A (zh) 2015-10-21
CN104991777B true CN104991777B (zh) 2018-04-13

Family

ID=54303593

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510413364.7A Active CN104991777B (zh) 2015-07-14 2015-07-14 实现Web应用程序自动化测试视图化开发的系统及方法

Country Status (1)

Country Link
CN (1) CN104991777B (zh)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105512038A (zh) * 2015-12-12 2016-04-20 天津南大通用数据技术股份有限公司 一种基于数据库自动化并行测试平台执行方法
CN106874176B (zh) * 2015-12-14 2021-04-27 创新先进技术有限公司 智能测试方法和装置
CN106201899B (zh) * 2016-07-29 2019-01-08 普元信息技术股份有限公司 基于业务分析实现自动生成测试案例的系统和方法
CN108694120B (zh) * 2017-04-12 2022-04-12 北京京东尚科信息技术有限公司 测试服务组件的方法和装置
CN108804278A (zh) * 2017-05-04 2018-11-13 苏州睿途网络科技有限公司 一种软件监测系统及其商业模式
CN108255707B (zh) * 2017-11-30 2020-09-25 平安科技(深圳)有限公司 测试用例的开发角色创建方法、装置、设备及存储介质
CN108595339A (zh) * 2018-05-09 2018-09-28 成都致云科技有限公司 自动化测试方法、装置及系统
CN111190809A (zh) * 2018-11-15 2020-05-22 北京京东尚科信息技术有限公司 一种生成测试接口应用的入参类对象的方法及装置
CN111352824B (zh) * 2018-12-21 2023-07-07 北京金山云网络技术有限公司 测试方法、装置及计算机设备
CN111309368B (zh) * 2020-03-12 2023-05-16 超越科技股份有限公司 一种基于b/s框架开发信息管理方法,系统,设备及可读存储介质
CN111539162B (zh) * 2020-04-26 2022-03-08 西南科技大学 一种Web化多目标气动数据分析系统
CN114077537B (zh) * 2020-08-14 2024-08-30 福建天泉教育科技有限公司 一种ui自动化测试框架的优化方法及其系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102521120A (zh) * 2011-11-16 2012-06-27 中国民航信息网络股份有限公司 一种软件自动化测试系统及方法
CN104391786A (zh) * 2014-10-31 2015-03-04 任子行网络技术股份有限公司 网页自动化测试系统及其方法
CN104461855A (zh) * 2013-09-22 2015-03-25 腾讯科技(北京)有限公司 一种Web自动化测试方法、系统及装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102521120A (zh) * 2011-11-16 2012-06-27 中国民航信息网络股份有限公司 一种软件自动化测试系统及方法
CN104461855A (zh) * 2013-09-22 2015-03-25 腾讯科技(北京)有限公司 一种Web自动化测试方法、系统及装置
CN104391786A (zh) * 2014-10-31 2015-03-04 任子行网络技术股份有限公司 网页自动化测试系统及其方法

Also Published As

Publication number Publication date
CN104991777A (zh) 2015-10-21

Similar Documents

Publication Publication Date Title
CN104991777B (zh) 实现Web应用程序自动化测试视图化开发的系统及方法
CN109947746B (zh) 一种基于etl流程的数据质量管控方法和系统
CN104077140B (zh) 用于持续集成的自动化编译方法和编译装置
CN102693183B (zh) 一种实现软件自动化测试的方法及系统
CN109408381B (zh) 一种基于数据校验模板的产品数据自动校验平台及方法
CN100589420C (zh) 基于功能操作封装的自动化测试脚本实现方法及装置
EP2572294B1 (en) System and method for sql performance assurance services
US10013336B2 (en) Information technology testing and testing data management
CN110321281A (zh) 基于混合自动化测试框架的Web测试平台及测试方法
CN105095059B (zh) 一种自动化测试的方法和装置
CN107315679A (zh) 一种嵌入式软件自动化确认测试方法及测试系统
CN106227657A (zh) 一种虚拟化云系统的持续集成方法和装置
CN106951315B (zh) 一种基于etl的数据任务调度方法及系统
CN102141962A (zh) 一种安全性分布式测试框架系统及其测试方法
CN113778898B (zh) 用户界面自动化测试方法、装置、电子设备及存储介质
CN109684847A (zh) 脚本漏洞的自动修复方法、装置、设备及存储介质
US9116779B2 (en) Test management domain asset discovery and analysis
CN110232014A (zh) 业务流程自动化测试方法、装置、控制器及介质
CN109032945A (zh) 一种软件可靠性工程集成环境框架设计方法
CN103077109B (zh) 一种测试计划调度方法及系统
CN110019203A (zh) 一种基于知识库的服务器自动巡检系统与方法
KR102269286B1 (ko) 어노테이션 자동 진단 시스템
CN113706110A (zh) 一种fpga测试工具一体化测试管理平台
CN114816980A (zh) 一种嵌入式通信系统用自动测试装置及方法
CN107544895A (zh) Hadoop大数据平台测试系统及方法

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