- PageObjects模式:
- 页面层:一个页面一个类,包含该页面的元素定位以及此页面内的常用操作。
- 通用业务逻辑封装层:一般涉及多个页面串联组合,将常用业务操作进行封装。
- 测试用例层:调用page层和封装层编写测试用例。原则上不允许出现元素定位以及基层方法
- 用例执行管理:
- pytest自带的pytest.mark标记
- allure修饰测试步骤展示,并输出报告
- 每个Page类命名以Page结尾
- 具体Page继承父类Page,在初始化时,就实现selfCheck页面自检函数
- 页面元素封装:尽量使用元组
- 页面函数封装:一般页面函数分三大类:
- 页面操作函数(switchXxx)等等,需要返回页面自身 return self
- 页面跳转函数(goToXxxPage)等等,需要返回实例化的新页面 return XxxPage()
- 页面获取信息函数(getCurLang)等等,返回信息 return text
- 元素查找、操作继承Driver类,页面继承BasePage类。断言使用Asserter类中定义好的断言
本次迭代暂不做多页面连续逻辑
本框架使用连续测试,多条用例需要连续执行