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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 数据库设计中的14个技巧

    数据库设计中的14个技巧

    2021年12月10日
    43
  • win10下使用vs2015编译支持xp系统的libcurl

    win10下使用vs2015编译支持xp系统的libcurl在我的一篇博客中写了编译libcurl的,那种方式编译的curl动态库在win7到win10上可以使用,但是在xp系统里就不能使用了,接下来讲解一种方法可以在xp系统里使用cur。1编译openssl由于在perl官网里提供的perl版本没有dmake,因此使用我提供的perl5.24带dmake的包,下载地址。安装好perl后,可以尝试使用ppminstalldmake命令来进行安装dmake模块,在我电脑里无法安装,因此直接使用dmake离线包。将dmake.exe所在目录添加到系统pat

    2022年7月12日
    16
  • oracle如何导出数据(oracle如何备份数据库)

    1、createnewPDM;2、selectdatabasemenu;3、clickReverseEngineerdatabase;4、thenchooseyourscriptfile;5、clickOK;6、success。还有一个版本1,打开Powerdesigner工具,创建一个PDM文件,选择与之匹配的数据库类型“ibmdb2udb8.xcommo…

    2022年4月12日
    230
  • jquery拼音转汉字搜索[通俗易懂]

    jquery拼音转汉字搜索[通俗易懂]HTML:1DOCTYPEhtmlPUBLIC”-//W3C//DTDXHTML1.0Transitional//EN””http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd”>2htmlxmlns=”http://www.w3.org/1999/xhtml”>34head>5

    2022年7月24日
    10
  • vue-router 多级路由redirect 重定向的问题

    vue-router 多级路由redirect 重定向的问题在做多级路由的时候遇到很多问题,虽然不难,但是如果没有经验,往往要花一整天时间才能解决(可能我笨),况且网上资料也很少。项目需要是这样的:登录页面跳到后台页面重定向,登录页是一级路由对应页面登录后:同时重定向二级和三级页面,这样登录就会重定向了,此时url但又有一个问题:当再次点击底部“堂食”的时候,url变成这样,并且三级页面没有出来解决办法是:在这个“堂食”按键添加一个方法记住,也只…

    2022年7月11日
    86
  • HTTP.SYS远程代码执行漏洞(CVE-2015-1635,MS15-034)

    HTTP.SYS远程代码执行漏洞(CVE-2015-1635,MS15-034)漏洞描述及渗透过程HTTP协议堆栈(HTTP.sys)中存在一个远程执行代码漏洞,该漏洞是在HTTP.sys不正确地分析特制HTTP请求时引起的。漏洞危害攻击者只需要发送恶意的http请求数据包,就可能远程读取IIS服务器的内存数据,或使服务器系统蓝屏崩溃。修复建议1)微软官方已经给出修复补丁(KB3042553),用户安装修复补丁即可。变通办法,禁用IIS内核缓存(可能降低IIS…

    2022年7月18日
    17

发表回复

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

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