BasePage类:

  在PO模式中抽象封装成一个BasePage类,该基类应该拥有一个只实现webdriver实例的属性。

  基础页面类中包含公用方法:点击、输入、获取元素等

Page:

  每个页面封装为一个类,继承BasePage类

抽出页面元素:

  使用配置文件存储页面定位方法和元素,可以使用yaml配置文件

PO的优点:

  1、PO提供了一种业务流程与页面元素操作分离的模式,这使得测试代码变得更加清晰。

  2、页面对象与用例分离,使得我们更好的复用对象。

  3、可复用的页面方法代码会变得更加优化

  4、更加有效的命名方式使得我们更加清晰的知道方法所操作的UI元素。

  5、有元素变化只需要维护配置文件就OK了,测试步骤变化,只需要维护TestCase即可

实例:

  BasePage类:

    

  LoginPage:

    

  testcase:

    

    

    

最新文章

  1. jQuery和AngularJS的区别小分析
  2. 十五天精通WCF——第七天 Close和Abort到底该怎么用才对得起观众
  3. DOM--3 DOM核心和DOM2 HTML(3)
  4. MakeFile中赋值
  5. UVa 11520 Fill the Square 填充正方形
  6. POJ 2253 Difference of Clustering
  7. Android 开发实践 ViewGroup 实现左右滑出窗口(二)
  8. Valid Phone Numbers
  9. Swift类与结构、存储属性、计算属性、函数与方法、附属脚本等
  10. Scale-up(纵向扩展) vs Scale-out(横向扩展)
  11. AIDE支持实时错误检查、代码重构、代码智能导航、生成APK
  12. selenium firefox
  13. 学起来 —— CSS 入门基础
  14. JRE System Library [JavaSE-1.7](unbound)
  15. 爬虫 http原理,梨视频,github登陆实例,requests请求参数小总结
  16. Java基础巩固——排序
  17. hibernate框架学习之数据抓取(加载)策略
  18. 远程下载马bypass waf
  19. golang 实现延迟消息原理与方法
  20. centos7安装magento随记 这就是个坑,果断放弃

热门文章

  1. 【使用篇二】SpringBoot整合mybatis(7)
  2. zzL4自动驾驶中感知系统遇到的挑战及解决方案
  3. CF1076D Edge Deletion 最短路树
  4. Chrome 禁止 http 自动转化为https
  5. vue-quill-editor富文本编辑器,添加了汉化样式却汉化不了
  6. [Taro] Taro 环境安装 (一)
  7. [LeetCode] 897. Increasing Order Search Tree 递增顺序查找树
  8. [LeetCode] 126. Word Ladder II 词语阶梯之二
  9. 一次失败的尝试:arm(aarch64架构)上使用docker运行Gogs
  10. golang web 方案