PO模式介绍

PO模式介绍目标1.深入理解PO模式的思想2.熟练掌握PO模式的分层思想1.存在的问题在做UI自动化时定位元素特别依赖页面,一旦页面发生变更就不得不跟着去修改定位元素的代码。举例:假设要对一个元素进行点击操作,而且会经常对该元素进行操作,那么你就可能会编写多处如下代码 1 driver.find_element_by_id(“login-btn”…

大家好,又见面了,我是你们的朋友全栈君。

目标

1. 深入理解PO模式的思想

2. 熟练掌握PO模式的分层思想

1. 存在的问题

在做UI自动化时定位元素特别依赖页面,一旦页面发生变更就不得不跟着去修改定位元素的代码。

举例:假设要对一个元素进行点击操作,而且会经常对该元素进行操作,那么你就可能会编写多处如下代码

 

1

driver.find_element_by_id("login-btn").click()

存在的问题:

如果开发人员修改了这个元素的id,这时候你就不得不修改所有对应的代码存在大量冗余代码

思考:如何来解决这个问题呢?

 

1. PO模式

PO是Page Object的缩写,PO模式是自动化测试项目开发实践的最佳设计模式之一。

核心思想是通过对界面元素的封装减少冗余代码,同时在后期维护中,若元素定位发生变化, 只需要调整页面元素封装的代码,提高测试用例的可维护性、可读性。

PO模式可以把一个页面分为三层,对象库层、操作层、业务层。

 

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

业务层:将一个或多个操作组合起来完成一个业务功能。比如登录:需要输入帐号、密码、点击登录三个操作。

 

2.1 引入PO模式的好处

引入PO模式前

存在大量冗余代码

业务流程不清晰后期维护成本大

引入PO模式后

 

减少冗余代码

业务代码和测试代码被分开,降低耦合性维护成本低

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/131665.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 各种窗口最小化快捷键详解「建议收藏」

    各种窗口最小化快捷键详解「建议收藏」一、ALT+Esc可以使当前窗口最小化。二、Win+D最小化所有窗口,再按一下就可以还原窗口。三、Windows+M最小化所有窗口。四、Windows+Shift+M还原最小化的窗口。五、A

    2022年8月4日
    6
  • Java大数据学习01–大数据的本质及学习顺序介绍

    Java大数据学习01–大数据的本质及学习顺序介绍随着互联网的使用人数越来越多,产生的数据也越来越多。根据数据我们可以分析出很多有用的信息。这也就是当前为什么大数据这么火的行为。学习大数据有很多种方式,但我们学习的载体是以目前最普遍,最流行的Java语言来进行学习。下面我们进入正题:1、首先是大数据的本质:大数据的本质无非两条:大数据的存储(Hadoop)和大数据的计算(Spark)存储:由于数据量巨大,把所有数据存在一个机器…

    2022年5月28日
    39
  • Python保留指定位数的小数

    Python保留指定位数的小数Python保留指定位数的小数1’%.2f’%f方法(推荐)2format函数(推荐)3round()函数4不进行四舍五入,直接进行截断1’%.2f’%f方法(推荐)f=1.23456print(‘%.4f’%f)print(‘%.3f’%f)print(‘%.2f’%f)结果:1.23461.2351.23这个方法会进行四舍五入2…

    2022年8月12日
    5
  • TiKV 性能参数调优[通俗易懂]

    TiKV 性能参数调优[通俗易懂]2019独角兽企业重金招聘Python工程师标准>>>…

    2022年9月23日
    4
  • MD5加密详解

    MD5加密详解MD5加密详解加密过程:密码:123456(明文形式)—–>加密后49ba59abbe56e0571.密码在请求提交后到达控制器2.到达控制后通过加密规则,转换成密文3.在经过DAO查询与数据库中已经存在的密文密码比对是否一直,一致,则放行。用户注册密码时是加密存储的用户修改密码时,也需要进行加密存储加密规则:加密规则可以自定义,在项目中通常使用BASE64和MD5,本文使用的加密规则就是MD5,BASE64:可反编码的编码方式​

    2022年7月27日
    11
  • 借助栈来实现单链表的逆置运算_中缀后缀表达式转换

    借助栈来实现单链表的逆置运算_中缀后缀表达式转换原题链接算术表达式有前缀表示法、中缀表示法和后缀表示法等形式。日常使用的算术表达式是采用中缀表示法,即二元运算符位于两个运算数中间。请设计程序将中缀表达式转换为后缀表达式。输入格式:输入在一行中给出不含空格的中缀表达式,可包含+、-、*、\以及左右括号(),表达式不超过20个字符。输出格式:在一行中输出转换后的后缀表达式,要求不同对象(运算数、运算符号)之间以空格分隔,但结尾不得有多余空格。输入样例:2+3*(7-4)+8/4输出样例:2 3 7 4 – * + 8 4 / +注意

    2022年8月8日
    6

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号