史上最强编写框架必杀技Selenium+Python中PO模式的使用

基于Python selenium2开始ui自动化测试脚本的编写不是多么艰巨的任务,只需要定位到元素,执行对应元素的操作即可。下面我们看一下这个简单的脚本实现百度搜索。

史上最强编写框架必杀技Selenium+Python中PO模式的使用

就这个小程序而已,维护起来看起来是很容易的。但随着时间的迁移,测试套件将持续的增长,脚本也将越来越多。如果我们需要维护10个、100个、甚至1000个页面呢?那么页面元素的任何改变都会让我们的脚本维护变得繁琐复杂,而且变得耗时易出错。

PO模式基于传统的关键字驱动与数据驱动,将页面元素定位和对元素的操作行为封装成一个page类,实现对页面对象和测试用例的分离。使用PO能让我们的测试代码变得可读性更好,可维护性高,复用性高。

史上最强编写框架必杀技Selenium+Python中PO模式的使用

一条测试用例可能需要多个步骤操作元素,将每一个步骤单独封装成一个方法,在执行测试用例时调用封装好的方法进行操作。PO模式可以把一个页面分为三个层级,对象库层、操作层、业务层。

  • 对象库层:封装定位元素的方法。

  • 操作层:封装对元素的操作。

  • 业务层:将一个或多个操作组合起来完成一个业务功能。

PO模式的设计优点有哪些?

  • 通过页面分层,将测试代码和被测试页面的页面元素及其操作方法进行分离,降低代码冗余

  • 页面对象与用例分离,业务代码与测试代码分离,降低耦合性

  • 不同层级分属不同用途,降低维护成本

  • 代码可阅读性增强,整体流程更为清晰

那么,如何系统的学习PO模式,将之应用在实战中呢?

为了感谢大家的关注,我联合腾讯课堂及测码学院,开设了《Selenium之PO模式设计训练营》原价298元,粉丝专属优惠,仅需0.02元

史上最强编写框架必杀技Selenium+Python中PO模式的使用

现在报名,还可领取PO模式学习路线图与更多免费资料,加老师记得微信暗号:999