在政务服务领域构建的web自动化测试框架及其应用方法与流程

文档序号:33394342发布日期:2023-03-08 12:35阅读:44来源:国知局
在政务服务领域构建的web自动化测试框架及其应用方法与流程

1.本发明涉及政务服务技术领域,特别是一种在政务服务领域构建的web自动化测试框架及其应用方法。


背景技术:

2.而互联网的普及、应用为“互联网+政务”应用奠定了重要的基础。“互联网+政务”以政务管理智能化、民生服务便民化为核心内容,方便企业和群众网上办事,显得尤为重要。政务服务系统建设主要分为面向社会侧和面向政府侧相关行政审批流程处理业务。不同政务业务办理流程存在较大差异,目前现有的web自动化测试框架,难以适应多种政务服务办事全流程自动化测试。
3.另外政务服务业务一个需求从提出到上线往往时间比较紧急,对需求的响应、并发等方面要求越来越高。而对于修改需求,又容易引入新的缺陷,在上线之前必须对原有功能进行回归测试,需要大量的测试投入。测试用例量也是非常庞大的,如此繁复单调的工作让人工来测试的话,无法保证效率和质量,所以必须要借助于非人工手段来实现。
4.目前现有的web自动化测试框架与本测试框架相比具有以下缺点:
5.1、不是针对政务服务领域的web自动化测试框架。
6.2、用例实现代码开发量比较高,不易于维护用例。
7.3、测试用例运行稳定性不足。
8.4、测试框架层次、结构不够清晰,不利于测试框架维护。


技术实现要素:

9.有鉴于此,本发明的目的在于提供一种在政务服务领域构建的web自动化测试框架及其应用方法,对政务业务各种办事及审批进行全流程自动化测试,低代码用例开发量,测试框架运行稳定性高,并且框架层次分明、结构清晰,便于维护及扩展。确保政务服务系统及时上线,保障产品质量。
10.为实现上述目的,本发明采用如下技术方案:在政务服务领域构建的web自动化测试框架,包括:
11.1)自动化框架管理器;定义初始化、读取待执行测试用例、设置用例集、获取测试用例所在脚本名称;
12.2)浏览器引擎;定义多种类型浏览器、设置当前要启动的浏览器;
13.3)调用浏览器驱动;定义初始化、启动浏览器;
14.4)登录模块;实现登录方法,用户名和密码请求登录,服务端验证成功后,服务端会签发一个令牌token,再把这个令牌token发送给客户端,该令牌token用于验证客户端请求身份验证;
15.5)令牌管理模块;获取令牌信息、本地存储令牌信息、读取配置文件中已存储令牌信息、更新浏览器令牌信息;
16.6)用例测试数据管理模块;实现自动化测试数据驱动方法,将测试数据与测试代码进行分离;
17.7)数据清洗管理模块:实现数据清洗功能方法,业务用例执行前,将数据库中存在使用例执行失败的干扰数据进行删除,确保用例执行稳定性;
18.8)页面对象管理模块;实现页面对象分层管理方法,采用pom模型;
19.9)公共方法管理模块;将框架中测试用例需要用到的公共方法进行封装,提供接口供外部调用;当公共方法需要修改时,只改一个地方即可;
20.10)配置管理模块:实现框架中各种格式文件读取及写入方法,文件类型包括:*.ini、*.txt、*.xlsx、*.xls及*.xlsm;
21.11)日志管理模块;定义日志输出格式、输出路径;
22.12)报告管理模块;定义测试报告生成格式、报告存储路径;
23.13)邮件管理模块;实例化发送邮件方法、测试报告路径读取;
24.14)调用测试框架模块;实现框架初始化,断言、浏览器退出;
25.15)政务服务办事流程自动化测试模块;实现政务服务办事及审批全流程功能自动化测试;
26.16)生成报告模块;测试用例执行完成时,实现将测试结果自动生成报告;
27.17)发送邮件模块;实现测试报告自动发送邮件功能。
28.在一较佳的实施例中,包括以下步骤:
29.第一步:初始自动化测试框架中本地文件中设置需要执行的测试用例范围,政务服务系统中根据需要测试的政务服务办事类型,配置审批流程节点;
30.第二步:运行自动化测试框架,全局初始化日志打印、读取测试用例脚本路径、测试报告读取路径;
31.第三步:实例化读取本地用例执行范围设置文件,获取需要执行的测试用例目录,初始化测试用例;
32.第四步:调用政务服务系统登录方法,根据浏览器引擎设置,启动对应的浏览器驱动,打开浏览器页面,执行自动登录操作;如登录异常,将会对异常界面自动截图,并中断自动化测试框架运行,在指定目录产生异常报告并自动发送邮件;
33.第五步:调用获取登录成功后令牌方法,取得当前启动浏览器中存储的令牌信息;
34.第六步:调用存储令牌方法,将获取到的令牌信息存入本地配置文件中,实现后续自动化用例运行时免登录操作;
35.第七步:调用测试用例数据驱动ddt管理方法,初始化测试用例数据,使得测试脚本在不同的数据集合下高度复用;
36.第八步:采用页面对象模型pom管理元素及对应操作方法,读取本地文件中页面元素,实例化元素操作,对外提供操作接口;业务测试用例,根据需要,调用已经封装好的方法,实现功能自动化测试;并且将公共的元素抽取出来,该元素被前端修改,只需要更新该元素的定位方式即可;该模型将页面元素定位和业务操作流程分开,分离测试对象和测试脚本即对象库与用例分离,更好地复用测试对象;
37.第九步:初始化单元测试框架,装载测试用例数据;
38.第十步:调用数据库数据清洗方法,将阻碍用例可能运行失败的数据清除,确保自
动化用例重复多次运行;
39.第十一步:调用单元测试工具,根据浏览器驱动启动浏览器;
40.第十二步:获取之前存入本地配置文件中的令牌信息;
41.第十三步:将获取到的令牌信息,更新到当前启动的浏览器中;
42.第十四步:执行政务服务办事业务用例方法,获取政务办事业务类型,根据获取到的业务类型,从数据库中读取对应的审批流程节点配置信息,包括单级、多级审批;单人、多人审批;本地审批流程节点配置文件中,包含所有政务服务办事类型、单级与多级审批信息、单人与多人审批信息、页面url地址,页面元素对应的操作方法名;根据办事类型,从本地审批流程节点配置文件中读取url信息,打开政务服务系统中对应操作页面,根据页面元素操作方法,自动化执行业务用例;
43.第十五步:用例执行过程中,对需要检查的点进行校验;如用例执行失败,或者页面元素找不到,将会自动截图并保存到指定路径,且会保存异常日志,便于问题定位;
44.第十六步:所有自动化用例执行完成后,输出图文测试报告在指定的目录下;
45.第十七步:测试报告生成后,发送到指定邮箱,便于及时知晓自动化测试结果。
46.与现有技术相比,本发明具有以下有益效果:
47.1、在政务服务领域web自动化测试框架技术方法
48.针对政务服务领域网上办事及对应流程审批进行自动化测试,相比于现有的通用性web自动化测试框架,其灵活的多级、多人审批模式,能更好的适应政务服务领域事务办理特性。
49.2、用例实现低代码率,便于维护用例。
50.测试数据、页面元素对象、全流程审批配置信息,采用关键字、分层模式,都在本地配置文件中维护,封装对应的读取操作接口供调用,业务用例测试代码非常精简,极大的减少开发量,降低测试用例维护成本。
51.3、测试用例运行稳定性较高。
52.数据库数据清洗sql在本地文件中维护,通过关键字,封装对应的操作方法供调用。测试用例执行前,将数据库中干扰测试数据全部删除,确保用例数据唯一性,让测试用例能够重复运行,提高自动化测试运行稳定性。
53.4、测试框架层次分明、结构清晰
54.整个测试框架包括:自动化框架管理器、浏览器引擎管理、令牌管理、基础支撑、业务支撑、自动化测试管理等模块,并采用分层思想,层次分明、结构清晰,利于理解框架,便于维护。
附图说明
55.图1为本发明优选实施例的在政务服务领域构建的web自动化测试框架示意图;
56.图2为本发明优选实施例的pom设计模式核心架构图;
57.图3为本发明优选实施例的在政务服务领域构建的web自动化测试框架的应用方法的第十四步流程示意图。
具体实施方式
58.下面结合附图及实施例对本发明做进一步说明。
59.应该指出,以下详细说明都是例示性的,旨在对本技术提供进一步的说明。除非另有指明,本文使用的所有技术和科学术语具有与本技术所属技术领域的普通技术人员通常理解的相同含义。
60.需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本技术的示例性实施方式;如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,当在本说明书中使用术语“包含”和/或“包括”时,其指明存在特征、步骤、操作、器件、组件和/或它们的组合。
61.在政务服务领域构建的web自动化测试框架,参考图1,具体包括:
62.1、自动化框架管理器:定义初始化、读取待执行测试用例、设置用例集、获取测试用例所在脚本名称等方法。
63.2、浏览器引擎:定义多种类型浏览器、设置当前要启动的浏览器。
64.3、调用浏览器驱动:定义初始化、启动浏览器方法。
65.4、登录模块:实现登录方法,用户名和密码请求登录,服务端验证成功后,服务端会签发一个令牌token,再把这个令牌token发送给客户端,该令牌token用于验证客户端请求身份验证。
66.5、令牌管理模块:获取令牌信息、本地存储令牌信息、读取配置文件中已存储令牌信息、更新浏览器令牌信息等方法。
67.6、用例测试数据管理模块:实现自动化测试数据驱动方法,将测试数据与测试代码进行分离。
68.7、数据清洗管理模块:实现数据清洗功能方法,业务用例执行前,将数据库中存在使用例执行失败的干扰数据进行删除,确保用例执行稳定性。
69.8、页面对象管理模块:实现页面对象分层管理方法,采用pom(project object model)模型。
70.9、公共方法管理模块:将框架中测试用例需要用到的公共方法进行封装,提供接口供外部调用。当公共方法需要修改时,只改一个地方即可,方便维护管理。
71.10、配置管理模块:实现框架中各种格式文件读取及写入方法,文件类型包括:*.ini、*.txt、*.xlsx、*.xls及*.xlsm等。
72.11、日志管理模块:定义日志输出格式、输出路径等方法。
73.12、报告管理模块:定义测试报告生成格式、报告存储路径等方法。
74.13、邮件管理模块:实例化发送邮件方法、测试报告路径读取等方法。
75.14、调用测试框架模块:实现框架初始化,断言、浏览器退出等功能方法。
76.15、政务服务办事流程自动化测试模块:实现政务服务办事及审批全流程功能自动化测试。
77.16、生成报告模块:测试用例执行完成时,实现将测试结果自动生成报告。
78.17、发送邮件模块:实现测试报告自动发送邮件功能方法。
79.在政务服务领域构建的web自动化测试框架的应用方法,具体包括以下步骤:
80.第一步:初始自动化测试框架中本地文件中设置需要执行的测试用例范围(全部
或者部分),政务服务系统中根据需要测试的政务服务办事类型,配置审批流程节点。
81.第二步:运行自动化测试框架,全局初始化日志打印、读取测试用例脚本路径、测试报告读取路径等方法。
82.第三步:实例化读取本地用例执行范围设置文件,获取需要执行的测试用例目录,初始化测试用例。
83.第四步:调用政务服务系统登录方法,根据浏览器引擎设置,启动对应的浏览器驱动,打开浏览器页面,执行自动登录操作。如登录异常,将会对异常界面自动截图,并中断自动化测试框架运行,在指定目录产生异常报告并自动发送邮件。
84.第五步:调用获取登录成功后令牌方法,取得当前启动浏览器中存储的令牌信息。
85.第六步:调用存储令牌方法,将获取到的令牌信息存入本地配置文件中,实现后续自动化用例运行时免登录操作。
86.第七步:调用测试用例数据驱动ddt管理方法,初始化测试用例数据,使得测试脚本在不同的数据集合下高度复用。不仅可以帮助增加类似复杂条件场景下的测试覆盖,还可以极大的减少对测试代码的编写和维护工作。使编写测试代码能力一般的测试人员,也能快速的实现自动化测试。
87.第八步:采用页面对象模型pom管理元素及对应操作方法,读取本地文件中页面元素,实例化元素操作,对外提供操作接口。业务测试用例,根据需要,调用已经封装好的方法,实现功能自动化测试。并且将公共的元素抽取出来,该元素被前端修改,只需要更新该元素的定位方式即可。该模型将页面元素定位和业务操作流程分开,分离了测试对象和测试脚本(对象库与用例分离),使得我们更好的复用测试对象。能让我们的测试代码变得可读性更好,高可维护性,高复用性。
88.该模型下测试人员自己需要编写的测试代码较少,降低了技术门槛。另外可多人共同维护开发脚本,利于团队协作。pom设计模式核心架构图如图2所示。
89.第九步:初始化单元测试框架,装载测试用例数据。
90.第十步:调用数据库数据清洗方法,将阻碍用例可能运行失败的数据清除,确保自动化用例可以重复多次运行。
91.第十一步:调用单元测试工具,根据浏览器驱动启动浏览器。
92.第十二步:获取之前存入本地配置文件中的令牌信息。
93.第十三步:将获取到的令牌信息,更新到当前启动的浏览器中,实现免登录操作,节省大量因登录而消耗的时间。提高用例执行效率,稳定性也能得到保障。
94.第十四步:执行政务服务办事业务用例方法,获取政务办事业务类型,根据获取到的业务类型,从数据库中读取对应的审批流程节点配置信息(包括单级、多级审批;单人、多人审批)。本地审批流程节点配置文件中,包含所有政务服务办事类型、单级与多级审批信息、单人与多人审批信息、页面url地址,页面元素对应的操作方法名。根据办事类型,从本地审批流程节点配置文件中读取url信息,打开政务服务系统中对应操作页面,根据页面元素操作方法,自动化执行业务用例;具体如图3所示。
95.第十五步:用例执行过程中,对需要检查的点进行校验。如用例执行失败,或者页面元素找不到,将会自动截图并保存到指定路径,且会保存异常日志,便于问题定位。
96.第十六步:所有自动化用例执行完成后,输出图文测试报告在指定的目录下。
97.第十七步:测试报告生成后,发送到指定邮箱,便于及时知晓自动化测试结果。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1