PageObject框架设计模式
https://www.jianshu.com/p/b5957c487350
Page Object 设计原理
Page Object设计模式是Selenium自动化测试项目的最佳设计模式之一,强调测试、逻辑、数据和驱动相互分离。
Page Object模式是Selenium中的一种测试设计模式,主要是将每一个页面设计为一个Class,其中包含页面中需要测试的元素(按钮,输入框,标题等),这样在Selenium测试页面中可以通过调用页面类来获取页面元素,这样巧妙的避免了当页面元素id或者位置变化时,需要改测试页面代码的情况。当页面元素id变化时,只需要更改测试页Class中页面的属性即可。
它的好处如下:
- 集中管理元素对象
- 集中管理一个page内的公共方法
- 后期维护方便
Page Object 的对象
- WebDriver封装
- 这里是对Selenium的封装,完成封装以后的基本封装代码。
- Page 基类
- 设计了一个基本的Page类,以便所有的页面进行继承,该类标明了一个sub page类的基本功能和公共的功能。
- Sub Pages(s)子类
- 具体的页面的类,定义了某个具体的页面的功能。
- Tests 类
- 这部分描述的是具体的测试用例。
- 定义Test Suite
- 多个测试用例添加在一个Test套件里面,一起执行。
- 定义Test Runner
- 设计测试的Runner,开启整个测试,并且对测试的结果生成HTML测试报告,并通过邮件发送到指定邮箱。
- 定义测试的主入口
- 定义测试的主要入口类,代码的入口
HTML测试报告
HTML测试报告需要引入HTMLTestRunner
from ranzhiWeekend import HTMLTestRunner
HTMLTestRunner是基于Python2.7的,我们的课程讲义基于Python3.x,那么需要对这个文件做一定的修改。
作者:画师Linty
链接:https://www.jianshu.com/p/b5957c487350
來源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。