[发明专利]一种基于事件处理函数间定义-引用的web自动化测试方法有效
申请号: | 201710177955.8 | 申请日: | 2017-03-23 |
公开(公告)号: | CN107038117B | 公开(公告)日: | 2020-11-06 |
发明(设计)人: | 陈军成;丁治明;段立娟;贾熹滨;郭黎敏;才智 | 申请(专利权)人: | 北京工业大学 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 北京思海天达知识产权代理有限公司 11203 | 代理人: | 张慧 |
地址: | 100124 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 事件 处理 函数 定义 引用 web 自动化 测试 方法 | ||
1.一种基于事件处理函数间定义-引用的web自动化测试方法,其特征在于,包括如下步骤:
1)在测试机器上安装web自动测试工具,在web自动测试工具中设置被测web应用程序的路径;
2)web自动测试工具自动分析被测web应用程序源码;自动识别web应用程序的事件处理函数、事件处理函数中的过程间程序控制流程图,并自动向事件处理函数中注入监控代码;保存自动分析过程获取的数据;具体为:
所述步骤2)中,对事件处理函数静态分析,根据事件处理函数直接或间接调用其它函数的关系自动构建事件处理函数的过程间控制流程图,自动遍历事件处理函数的过程间控制流图中的完整最短路径,记录每条完整最短路径中的定义和引用,计算事件处理函数间的定义-引用关系;
所述步骤2)中保存的完整最短路径定义以及事件处理函数间的定义-引用关系定义如下:
事件处理函数的过程间控制流图的起始节点和结束节点分别为start、end,事件处理函数的过程间控制流图的完整最短路径起始于start,结束于end,且不会覆盖过程间控制流图的同一条边两次;
如两个事件处理函数存在完整最短路径分别为p1、p2以及变量var,若在p1中定义var而在p2中引用var,则p1和p2关于变量var存在事件处理函数间的定义-引用关系;
所述步骤2)中注入监控代码的方法为:在构建事件处理函数的过程间控制流图时,每遇见一个分支,在分支中注入一个表征当前分支执行的监控语句;
所述步骤2)中自动分析获取的数据包括web元素、web元素上的操作和对应的事件处理函数三者之间的关系、每个事件处理函数对应的过程间控制流图、每个事件处理函数对应的过程间控制流图上的完整最短路径以及每条完整最短路径上的变量定义和引用、事件处理函数间的定义-引用关系、以及注入监控代码后的web应用程序;
3)将步骤2)中注入监控代码的web应用程序拷贝至提供web服务的服务器端,并在服务器端设置web应用程序对外提供web服务的网址;
4)在测试机器上的web自动测试工具中设置被测web应用程序的网址,即步骤3)中设置的web服务网址;
5)自动测试工具根据步骤2)中获取的数据以及步骤4)中设置的被测web应用程序的网址,自动生成测试用例并自动执行,具体为:
所述步骤5)中,测试机器上的web自动测试工具采用基于反馈的方式自动遍历被测web应用程序,包括如下步骤:
5.1)自动访问被测web应用程序首页并获取首页HTML脚本源码,根据被测web应用程序执行时的监控语句执行信息获取事件处理函数执行路径以及执行时覆盖的事件处理函数间的定义-引用信息,并记录当前已覆盖的事件处理函数间的定义-引用信息,当前页面为web应用程序首页;
5.2)对当前页面的可以执行的事件处理函数进行分析,若当前所有的事件处理函数间的定义-应用关系均已覆盖,则测试完毕;若前述执行的事件处理函数的完整最短路径与当前页面web元素对应的事件处理函数的完整最短路径不存在事件处理函数之间的定义-引用关系,则随机选择一个可以操作的web元素;若前述执行的事件处理函数的完整最短路径与当前页面web元素对应的事件处理函数的完整最短路径存在事件处理函数之间的定义-引用关系且未覆盖,则执行对应元素上的操作,触发事件处理函数执行,并记录覆盖执行过程中覆盖的事件处理函数间的定义-引用信息,置当前页面为事件处理函数执行后的新的web应用程序页面,重复执行步骤5.2)。
2.如权利要求1所述的基于事件处理函数间定义-引用的web自动化测试方法,其特征在于,所述步骤2)中待分析的web应用程序源码包括HTML脚本和Javascript脚本。
3.如权利要求1所述的基于事件处理函数间定义-引用的web自动化测试方法,其特征在于,所述步骤2)中的事件处理函数通过静态分析HTML脚本和Javascript脚本自动获取。
4.如权利要求1所述的基于事件处理函数间定义-引用的web自动化测试方法,其特征在于,所述步骤3)中,服务器端以IP地址或域名网址的形式对外提供被测web应用程序访问地址。
5.如权利要求1所述的基于事件处理函数间定义-引用的web自动化测试方法,其特征在于,所述步骤1)中web应用程序由HTML文件、Javascript文件以及其它声音、视频文件组成。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京工业大学,未经北京工业大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710177955.8/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种包装纸复合机收料推料装置
- 下一篇:一种包布机放布机构