PageObject介绍
1)2013 Martin Flower 提出
2)2015 Selenium 官方加入PO思想
PageObject模式
Selenium PO 官方总结:
总结:
1)⽤公共⽅法代表UI所提供的功能
2)尽量不要公开页面的内部细节:控件定位逻辑等,只把业务api暴露给用户
3)PO⽅法内一般不要加断⾔
4)方法返回其他PageObject或返回⽤于断⾔的数据
5)不需要建模UI内的所有业务元素
6)相同的业务不同的结果,可以建模为不同的⽅法
基于POM的⽤例组织结构
page:完成对页⾯的封装
driver:完成对web、android、ios、接⼜的驱动
testcase:调⽤各类page完成业务流程并进⾏断⾔
data:配置⽂件和数据驱动
utils:其他便捷的功能的高级封装,可选择使用
借鉴:Python对PO的封装(不推荐)
POM编写⽤例顺序
1)根据界⾯封装page类与⽅法,实现可以为空
2)编写⽤例,不断重构明确page⾥⽅法的⼊参和返回值
3)开始实现page内的⽅法
4)调试
整体类似TDD风格。
简单实例演练(无数据驱动和报告,以后学习后继续更新)
以企业微信做了个简单的登录注册练习,主要是在于理解PO思想。
简单项目结构:
用例部分:
class TestIndex</