The invention discloses an automatic test method for page objects, which belongs to the field of page testing, including the design of each page as a Class; the page elements are obtained by calling the page class in the Selenium test page; the test instruction is read from the page element; the page code file is used to check the page to be tested. The Class for the search operation creates a page object instance; calls the page operations specified by the test instructions to operate the related Class; calls the page elements to find the corresponding page elements in the page operation related Class; performs the page operation on the found page elements to obtain the test results. In this invention, each page is designed as a Class, and the page elements are obtained by calling the page class in the Selenium test page, avoiding the need to test the page code when the page element ID or the location changes.
【技术实现步骤摘要】
一种页面对象自动化测试方法
本专利技术涉及一种页面对象自动化测试方法,属于页面测试
技术介绍
目前,使用webdriver进行测试时,会出现一个对某一个页面的元素进行定位的时候,程序行间充斥着id、name、xpath等方法,这样会造成测试程序的可读性较差,不便于后期的维护以及修改。虽然可以通过添加注释的方法使程序便于理解,但并不能从根本上解决问题,目前采用较多的是通过对这些方法进行二次封装来避免每次对这些方法的直接调用,通过方法的封装虽然可以实现复用,但通过封装无法实现页面元素的逻辑处理和测试数据的独立。不断地添加新的测试,而极少地去重构、利用原有测试,Selenium的执行相对单元测试而言速度比较慢,随着测试逐渐的增多,运行时间会逐渐增加到难以承载的程度。
技术实现思路
本专利技术的主要目的是为了提供一种页面对象自动化测试方法,将每一个页面设计为一个Class,在Selenium测试页面中可以通过调用页面类来获取页面元素,避免了当页面元素id或者位置变化时,需要改测试页面代码的情况。本专利技术的目的可以通过采用如下技术方案达到:一种页面对象自动化测试方法,包括以下步骤:S1:将每一个页面设计为一个Class;S2:在Selenium测试页面中通过调用页面类来获取页面元素;S3:从页面元素中读取测试指令;S4:根据测试指令,调用待测试页面的页面代码文件,采用不执行页面元素查找操作的Class创建页面对象实例;S5:调用测试指令指定的用于测试页面对象实例的页面操作相关Class;S6:在页面操作相关Class中调用页面元素查找相应的页面元素;S7:对 ...
【技术保护点】
1.一种页面对象自动化测试方法,其特征在于,包括以下步骤:S1:将每一个页面设计为一个Class;S2:在Selenium测试页面中通过调用页面类来获取页面元素;S3:从页面元素中读取测试指令;S4:根据测试指令,调用待测试页面的页面代码文件,采用不执行页面元素查找操作的Class创建页面对象实例;S5:调用测试指令指定的用于测试页面对象实例的页面操作相关Class;S6:在页面操作相关Class中调用页面元素查找相应的页面元素;S7:对查找到的页面元素执行页面操作,获得测试结果。
【技术特征摘要】
1.一种页面对象自动化测试方法,其特征在于,包括以下步骤:S1:将每一个页面设计为一个Class;S2:在Selenium测试页面中通过调用页面类来获取页面元素;S3:从页面元素中读取测试指令;S4:根据测试指令,调用待测试页面的页面代码文件,采用不执行页面元素查找操作的Class创建页面对象实例;S5:调用测试指令指定的用于测试页面对象实例的页面操作相关Class;S6:在页面操作相关Class中调用页面元素查找相应的页面元素;S7:对查找到的页面元素执行页面操作,获得测试结果。2.根据权利要求1所述的一种页面对象自动化测试方法,其特征在于,所述S1中,每一个Class均包含页面中需要测试的元素,包括按钮、输入框和标题。3.根据权利要求1所述的一种页面对象自动化测试方法,其特征在于,所述S2中,在Selenium测试页面中通过调用页面类来获取页面元素,包括:数据、对象、脚本三者的分离;构建基于selenium的web自动化测试框架,一旦有web应用的需求发生变动时,仅更改对应的对象、数据及脚本即可。4.根据权利要求1所述的一种页面对象自动化测试方法,其特征在于,所述S3中,从页面元素中读取测试指令包括:接收在Selenium测试页面中输入的操作指令;获取原页面中与操作指令对应的页面对象;提取页面对象的页面元素;读取并存储页面元素中测试指令。5.根据权利要求1所述的一种页面对象自动化测试方法,其特征在于,所述S4中,采用不执行页面元素查找操作的Class创建的所述页面对象实例包括设置信息和资源信息;所述资源信息包括页...
【专利技术属性】
技术研发人员:陶磊,徐唤春,裴大鹏,
申请(专利权)人:商派软件有限公司,
类型:发明
国别省市:上海,31
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。