自动化测试的PO模式「建议收藏」

自动化测试的PO模式「建议收藏」什么是PO?1.页面对象模型(PO)是一种设计模式,用来管理维护一组页面元素的对象库.2.在PO下,应用程序的每一个页面都有一个对应的Page类.3.每一个Page类维护着该页面的元素集和操作这些元素的方法.PO的好处?1.代码可读性强2.可维护性高3.复用性高怎么设计PO?设计的原则1.抽象每一个页面2.页面中元素不暴露,仅报错操作元素的方法3.页面不应该有繁琐的继承关…

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

什么是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代码如下

在这里插入图片描述

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

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

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


相关推荐

  • vue怎么使用layui_layui动态添加输入框

    vue怎么使用layui_layui动态添加输入框vue-layer弹框插件安装npmi–savevue-layer引用importlayerfrom’vue-layer’Vue.prototype.$layer=layer(Vue);参数说明{type:0,//0(信息框,默认)1(页面层)2(iframe层)3(加载层)4(tips层)title:’信息’,con…

    2025年8月1日
    0
  • docker 视频网站_springboot前后端分离

    docker 视频网站_springboot前后端分离摘要随着计算机应用技术和网络技术的日新月异,宽带视频点播技术因良好的人机交互性和流媒体传输技术倍受教育、娱乐等行业青睐。这里结合平台开发实例,阐述了基于WEB的在线视频点播网站的软件结构和设计实现。本视频点播系统实现用户信息管理、视频文件的添加、删除、修改及在线播放和搜索功能。由于本系统是一个小型系统,所以我们采用基本的MySQL数据库,易于实现。具体实现中将vue及springboot完美融合,力求界面美观、操作流畅。本文主要论述服务器端视频服务平台的搭建、管理功能的具体实现,以及图形用

    2022年8月21日
    3
  • TASKLIST命令操作[通俗易懂]

    TASKLIST命令操作[通俗易懂]        Tasklist与Taskkill是xp下很强大的命令工具。之所以强大,并不完全因为我们所熟悉的Taskkill/f/im或是Taskkill/f/pid的用法,而是因为它们的筛选器。我们先来看一下Tasklist与Taskkill的基本语法及使用:  显示运行在本地或远程计算机上的所有任务的应用程序和服务列表,带有过程ID

    2022年5月8日
    267
  • IP地址范围怎么算_ip地址数目怎么算

    IP地址范围怎么算_ip地址数目怎么算1、如果掩码、IP等信息如下:2、我们可以看到,子网掩码为255.255.255.240,因为0-255有256个数字,所以256-240=16。也就是这个网段有16个IP地址。3、我们现在使用的IP地址是什么,或者是网关,最后的一个数字就好。IP是203,网关是193。4、找到IP段就能判断可用IP是多少。这时因为每个IP段都是由四部分组成,分别是网络号、网关、可用IP、广播号。…

    2022年10月19日
    0
  • github 京东自动签到_手机京东签到在哪里

    github 京东自动签到_手机京东签到在哪里京东自动签到(利用github实现)+Cooki失效解决办法京东自动签到https://ruicky.me/2020/06/05/jd-sign/参考上面这篇文章,就不转载过来了,原文已经写的很详细了。但自己实践时Sevrer酱提示Cookie失效,同时也看到此文下面有很多跟我一样情况的,所以有提示Cookie失效的请用下面链接的方法获取Cookie,记得复制出来的Cookie值要把所有空格删除。获取京东Cookiehttps://www.plus888.com/21061.html…

    2022年9月2日
    3
  • 状况与状态区别_402状态码

    状况与状态区别_402状态码http状态码301和302详解及区别一直对http状态码301和302的理解比较模糊,在遇到实际的问题和翻阅各种资料了解后,算是有了一定的理解。这里记录下,希望能有新的认识。大家也共勉。官方的比较简洁的说明:301redirect:301代表永久性转移(PermanentlyMoved)302redirect:302代表…

    2022年10月3日
    0

发表回复

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

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