PageObject框架设计模式

https://www.jianshu.com/p/b5957c487350

Page Object 设计原理

Page Object设计模式是Selenium自动化测试项目的最佳设计模式之一,强调测试、逻辑、数据和驱动相互分离。

Page Object模式是Selenium中的一种测试设计模式,主要是将每一个页面设计为一个Class,其中包含页面中需要测试的元素(按钮,输入框,标题等),这样在Selenium测试页面中可以通过调用页面类来获取页面元素,这样巧妙的避免了当页面元素id或者位置变化时,需要改测试页面代码的情况。当页面元素id变化时,只需要更改测试页Class中页面的属性即可。

它的好处如下:

  • 集中管理元素对象
  • 集中管理一个page内的公共方法
  • 后期维护方便

Page Object 的对象

  1. WebDriver封装
    • 这里是对Selenium的封装,完成封装以后的基本封装代码。
  2. Page 基类
    • 设计了一个基本的Page类,以便所有的页面进行继承,该类标明了一个sub page类的基本功能和公共的功能。
  3. Sub Pages(s)子类
    • 具体的页面的类,定义了某个具体的页面的功能。
  4. Tests 类
    • 这部分描述的是具体的测试用例。
  5. 定义Test Suite
    • 多个测试用例添加在一个Test套件里面,一起执行。
  6. 定义Test Runner
    • 设计测试的Runner,开启整个测试,并且对测试的结果生成HTML测试报告,并通过邮件发送到指定邮箱。
  7. 定义测试的主入口
    • 定义测试的主要入口类,代码的入口

HTML测试报告

HTML测试报告需要引入HTMLTestRunner

from ranzhiWeekend import HTMLTestRunner

HTMLTestRunner是基于Python2.7的,我们的课程讲义基于Python3.x,那么需要对这个文件做一定的修改。



作者:画师Linty
链接:https://www.jianshu.com/p/b5957c487350
來源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
原文地址:https://www.cnblogs.com/jiaoyang77/p/8850038.html