[发明专利]基于建模的web应用自动化测试方法有效
| 申请号: | 201310560257.8 | 申请日: | 2013-11-12 |
| 公开(公告)号: | CN103678120A | 公开(公告)日: | 2014-03-26 |
| 发明(设计)人: | 杨瑾 | 申请(专利权)人: | 北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司 |
| 主分类号: | G06F11/36 | 分类号: | G06F11/36 |
| 代理公司: | 北京邦信阳专利商标代理有限公司 11012 | 代理人: | 王昭林;胡冰 |
| 地址: | 100080 北京*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 基于 建模 web 应用 自动化 测试 方法 | ||
技术领域
本发明涉及web测试技术,更具体地,涉及基于建模的web应用自动化测试方法。
背景技术
互联网应用正逐步渗透到人们生活的各个方面,原来需要面对面处理的事务通过网络即可实现,例如网上缴费、购物、更换证件。将来,互联网也必然会有更多的应用。因此,各个网站的页面会更新非常频繁,这也必然导致web应用测试更频繁。虽然现在已经有了web应用的自动化测试,但是由于用户需求变化快、界面变化频繁等特点,使web应用自动化测试的开展都面临着脚本失败率高,脚本维护成本高的困扰。即使是应用正式发布后也会有新需求源源不断的加入,这些需求往往伴随着界面或者控件的属性随之改变,导致需要重新设计和编写自动测试方案。
发明内容
针对上述问题,本发明提出一种基于建模的web应用自动化测试方法,包括:S1、建立浏览器,使用该浏览器访问待测网站页面,获取数据;S2、分析页面,进行页面建模,并保存至页面建模数据文件;S3、在测试时,启动所述浏览器,读取所述页面建模数据文件,从中获取页面的受测对象和测试用例,模拟用户操作。
进一步,在S1中,该浏览器是可配置的,获取的数据是用户交互数据。
进一步,在S2中,所述页面建模数据文件保存了受测对象的属性以及测试用例。
进一步,在S1中,通过JEditorPane与JSpider浏览器访问web站点。
进一步,在S2中,通过JSpider爬虫引擎对站点待测试页面进行页面建模,选择页面上相应的受测对象并将数据保存至本地的页面模型数据文件。
进一步,在S3中,使用Webdriver提供的接口启动并控制所述浏览器,通过数据解析器从页面建模数据文件中获取页面的受测对象和测试用例,根据测试用例的操作步骤,实现模拟用户操作。
进一步,S3还包括:启动所述浏览器,通过Jenkins持续集成平台或命令行调用自动化脚本,脚本通过webdriver API调用所述页面建模数据文件,并在浏览器中执行脚本中相应的操作。
本方法通过浏览器对测试页面自动建模,并通过控制浏览器运行过程中调用页面模型数据,控制浏览器实现模拟用户操作,此方法可跨浏览器、可跨平台、可并行,能实现自动化测试从开发、执行到维护的高效。
附图说明
图1为本发明的方法的一个实施例的流程图;
图2为图1中的页面建模的流程图;
图3为本发明的系统的一个实施例的结构图;
图4为图3中的自动测试过程的流程图;
图5为一个应用实例的一个截图。
具体实施方式
在本发明中,“对象”指的是用户期望在页面中操作的对象,例如文本框、图片、按钮、连接等。“属性”在html页面源码中,用来表示该对象的性质和特性,通常都是以“对象名”=“值”的形式来表示。“测试用例”是包含了业务逻辑、顺序、期望结果等的数据集合,是自动化测试脚本编写的依据。
图1为本发明的方法的一个实施例的流程图,所述方法包括:
步骤S1、建立浏览器,使用该浏览器访问待测页面,其中该浏览器能够抓取待测页面的源码。
该浏览器是特制的,可以用多种方式实现。该浏览器是可配置的,可展示页面的html源码。浏览器抓取的数据是页面上的受测对象,所述受测对象可以是静态的(例如图片),也可以是动态的(例如用户交互数据,比如输入框、搜索按钮)。
有利地,所述浏览器能够进行输入、链接点击等操作,还可以模拟复杂浏览器的功能,包括拖拽、截屏、文件上传与下载的验证等。更有利地,该浏览器能够检查站点的错误。
步骤S2、分析待测页面的源码,进行页面建模,并保存至页面模型数据文件。
页面模型,是指自动化测试中会使用到的对象所组成的模型。
图2显示了如何进行页面建模。在该步骤S2中,建模针对的是待测页面中需要操作的对象。具体为,建模的目标是页面中的受测对象(选择哪些受测对象可以预先根据业务规则配置),每一个受测对象在页面中具有固定的路径。因此,受测对象-值(KEY-VALUE)就形成了该页面的模型。将该受测对象-值存储到文件中,形成页面模型数据文件。其中,VALUE保存的是受测对象的路径。在一个实施例中,VALUE保存的是XPATH的值。XPATH是XML路径语言(XML Path Language),它是一种用来确定XML文档中某部分位置的语言。XPATH基于XML的树状结构,提供在数据结构树中找寻节点的能力。因此,用XPATH的值可以定位受测对象在页面中的位置。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司,未经北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310560257.8/2.html,转载请声明来源钻瓜专利网。
- 上一篇:固态硬盘
- 下一篇:源代码类似度评价方法以及源代码类似度评价装置





