python po设计模式_基于Python Selenium Unittest PO设计模式详解

本文章会讲述以下几个内容:

1、什么是PO设计模式(Page Object Model)

2、为什么要使用PO设计模式

3、使用PO设计模式要点

4、PO设计模式实例

1、什么是PO设计模式 (Page Object Model)

一种在测试自动化中变得流行的设计模式,使得自动化测试脚本的减少代码重复、更易读、减少维护成本。

一般PO设计模式有三层

第一层:

对Selenium 进行二次封装,定义一个所有页面都继承的 BasePage ,

封装 Selenium 基本方法 例如:元素定位,元素等待,导航页面 ,

不需要全部封装,用到多少方法就封装多少方法。

第二层:

页面元素进行分离,每个元素只定位一次,隔离定位,如果页面改变,只需要改变相应的元素定位;

业务逻辑分离 或 操作元素动作分离

第三层:

使用单元测试框架对业务逻辑进行测试

2、为什么要使用PO设计模式

页面频繁变化,(页面html结构等变化)导致页面UI元素频繁变动,元素定位改变

传统线性自动化(面向过程开发),用例中需要反复的定位同一个元素

每当页面发生变化的时候,需要在用例中寻找变动的部分,工作量大,容易产生遗漏,不容易维护

3、使用PO设计模式要点

不要在page页面对象外做元素定位

不在page页面对象里面写断言,除非是页面是否成功加载断言

需要多少个元素就定位多少个,不需要对整个页面的元素进行定位

当你的用例设计页面跳转时,例如登陆操作,登陆完成后跳转首页,当页面发生“跳转”

,封装的业务逻辑需要返回(return)对应的页面对象的实例

BasePage封装Selenium 基础方法,不需要全部封装,用到多少方法就封装多少方法

4、 PO设计模式实例

用例:

标题:登陆成功

前置条件:打开TAPD登录页 https://www.tapd.cn/cloud_logins/login

操作步骤:

1. 输入用户名(手机或邮箱):XXXXXX

2. 输入密码:XXXXXX

3. 点击登陆按钮

预期结果:

3. 页面跳转至“工作台-我的待办”

项目目录:

base_page.py

login_page.py

worktable_to_do_page.py

test_login.py

Page object model 官方文档

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值