[发明专利]一种自动化测试方法及系统有效
申请号: | 201110312680.7 | 申请日: | 2011-10-14 |
公开(公告)号: | CN103049369A | 公开(公告)日: | 2013-04-17 |
发明(设计)人: | 李子乐;黄先荣 | 申请(专利权)人: | 阿里巴巴集团控股有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 北京同达信恒知识产权代理有限公司 11291 | 代理人: | 郭润湘 |
地址: | 英属开曼群岛大开曼*** | 国省代码: | 开曼群岛;KY |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 自动化 测试 方法 系统 | ||
技术领域
本申请涉及自动化测试领域,特别是涉及一种自动化测试方法及系统。
背景技术
UI(user interface;用户界面)自动化测试,是由机器模拟用户UI操作,进行自动化测试。主要测试类型有Web UI自动化测试和本地应用程序UI自动化测试。
UI自动化测试多采用id、class等特定属性来定位元素,然而在实际应用中,往往有很多需要自动化测试的控件并没有可用的属性。对于那些没有属性的元素,多采用xpath绝对路径的方式,灵活度不够。JQuery框架可用于处理页面,因为它的快速和简洁,受到越来越多的开发者的青睐。开发用灵活的写法构建出来的页面,往往给使用传统定位方式的测试人员带来困扰。
将元素的查找方式,抽象到界面模型中去,是规避界面元素变化对自动化测试影响的有效手段。传统的界面模型一般以代码的方式展现,并直接供测试脚本调用。但是在企业级应用的时候,会遇到麻烦:如模型代码不够直观不易上手;分享不容易,一个项目中写好的模型不方便其它项目使用,把模型代码拷贝过来用又会遇到更新同步的问题。
另外,在现有技术中,还有如下几种测试框架,但是都有各种缺陷:
Watir封装了IE的COM对象,定位方式丰富,支持id,name,index和xpath,但是不支持Selector(选择器)的方式来定位控件。
Selenium直接引用CSS Selector的js文件,来查找页面上元素,由于它直接用js来驱动查找和操作,Selenium不支持本地应用程序的自动化测试。
AutoIt是本地应用程序自动化的解决方案,他采用自己定义的语法来定位界面上的元素,如″[NAME:textBoxFolder]″,″[CLASS:Button;TEXT:Finish;INSTANCE:2]″等。
发明内容
本申请提供一种自动化测试方法及系统,用以解决现有技术中自动化测试存在的模型代码在企业级应用中不够直观不易上手、分享不容易等问题。
本申请一方面提供一种自动化测试方法,应用于被测界面,所述方法包括:产生一测试请求;运行测试脚本,对所述被测界面进行测试;以及获得测试结果;其中,所述测试脚本是根据一界面模型编写的脚本,所述界面模型包括子模块和/或控件的集合。
优选地,所述子模块嵌套下级子模块和/或所述控件。
优选地,多个所述子模块设置为子模块集合。
优选地,当所述被测界面为Web界面时,所述界面模型为Web界面模型;当所述被测界面为本地应用程序时,所述界面模型为本地应用程序界面模型。
优选地,所述控件的属性包括所述控件的名称、元素类型、元素查找方式及是否为集合;所述子模块的属性包括所述子模块的名称、元素查找方式及是否为集合。
优选地,所述控件的元素查找方式和所述子模块的元素查找方式用来查找和定位所述控件对应的元素在所述被测界面中的位置。
优选地,所述控件的元素查找方式和所述子模块元素查找方式为selector。
优选地,所述测试脚本具体为根据所述控件的名称、所述控件的元素类型、所述控件的元素查找方式、所述控件是否为集合和所述子模块的名称、所述子模块的元素查找方式、所述子模块是否为集合编写的。
优选地,在所述运行所述测试脚本进行测试前,还下载最新的界面模型,并生成界面模型类文件,将所述类文件加载到所述测试脚本中。
本申请另一方面提供了一种自动化测试系统,应用于一被测界面,所述系统包括测试请求产生模块,用于产生一测试请求;脚本运行模块,用于运行测试脚本,以对所述被测界面进行测试;以及结果获得模块,用于获得测试结果;其中,所述测试脚本是根据一界面模型编写的脚本,所述界面模型包括子模块和/或控件的集合。
本申请有益效果如下:
本申请一实施例采用包括有子模块和/或控件的集合的界面模型,并将该界面模型应用到自动化测试中,使得在企业级应用中,共享界面模型变得容易,测试脚本维护成本降低。并且统一了所有UI界面自动化测试的统一,统一了建立界面模型的方式,统一了测试脚本的写法,也有效降低了学习成本。
更进一步,本申请一实施例采用了Selector的元素查找方式,使得界面模型的应用更加灵活,将Selector从原来只支持html应用扩展到由抽象来实现Selector的语法,不同场景(本地应用或浏览器应用,如firefox)只需要简单实现接口就能实现对Selector的支持。
附图说明
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110312680.7/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种自动供水栽花盆
- 下一篇:虚拟机的资源管理装置、方法和系统