自动化测试的PO模式

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/saberpan/article/details/84987774

什么是PO?

1.页面对象模型(PO)是一种设计模式,用来管理维护一组页面元素的对象库.

2.在PO下,应用程序的每一个页面都有一个对应的Page类.

3.每一个Page类维护着该页面的元素集和操作这些元素的方法.

在这里插入图片描述

PO的好处?

1.代码可读性强

2.可维护性高

3.复用性高

怎么设计PO?

设计的原则
1.抽象每一个页面

2.页面中元素不暴露,仅报错操作元素的方法

3.页面不应该有繁琐的继承关系

4.页面中不是所有元素都需要涉及到,核型业务元素做建模使用

5.把页面划分功能模块,在Page中实现这些功能方法

在这里插入图片描述

下面我们看下PO的代码目录组织示例:

在这里插入图片描述

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

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

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

4、更加有效的命名方式使得我们更加清晰的知道方法所操作的UI元素。例如我们要回到首页,

 方法命名为:gotoHomePage(),通过方法名即可清晰的知道具体的功能实现。

PO实现示例
下面看下使用PO设计模式构建的百度搜索用例,先看下代码组织结构如下:
在这里插入图片描述

#basePage.py代码如下
在这里插入图片描述

#searchPage.py代码如下
在这里插入图片描述

#testSearchPage.py代码如下

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/saberpan/article/details/84987774