自动化测试的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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • R语言开发工具之eclipse+StatET

    R语言开发工具之eclipse+StatET

    2022年3月3日
    44
  • 在虚拟机上安装XP系统「建议收藏」

    在虚拟机上安装XP系统「建议收藏」WindowsXP番茄家园的安装点击”文件”–>”新建”–>”虚拟机”–>弹出”新建虚拟机向导”的欢迎界面.–>”下一步”配置你的新虚拟机,选择”典型”–>”下一步”选择客户机操作系统–>”MicrosoftWindows”-,版本:WindowsXPProfessional–>”下一…

    2022年8月16日
    2
  • 最小二乘法(多元)推导

    最小二乘法(多元)推导最小二乘法(多元)推导1声明本文的数据来自网络,部分代码也有所参照,这里做了注释和延伸,旨在技术交流,如有冒犯之处请联系博主及时处理。2最小二乘法简介最小二乘法是一种优化的方法,它主要是通过最小化误差的平方和来做函数拟合的方法。3最小二乘法多元推导有如下回归模型其中b0,b1,…bp,μ2×1,x2,…xp都是与无关的未知参数。这里设是一个样本。这里令残差平方和的表达式为…

    2022年5月13日
    67
  • 一步设置Intellij IDEA 热部署处理方法

    一步设置Intellij IDEA 热部署处理方法  在IntellijIDEA中默认是关闭了自动编译的,可以按照如下1步设置开启自动编译:1.IDEA开启项目自动编译,进入设置,Build,Execut,Deployment->Compiler勾选中左侧的BuildProjectautomatically   …

    2022年6月1日
    80
  • Latex 希腊字母大写[通俗易懂]

    Latex 希腊字母大写[通俗易懂]大写小写LaTeX大写大写LaTeX$A\quad\alpha$A\alphaNνN\quad\nuNνN\nuBβB\quad\betaBβB\betaΞξ\Xi\quad\xiΞξ\Xi\xiΓγ\Gamma\quad\gammaΓγ\Gamma\gammaOoO\quadoOoOoΔδ\Delta\quad\deltaΔδ\Delta\deltaΠπ\Pi\quad\piΠπ\Pi\p…

    2022年10月13日
    2
  • 我的博客日记第一天「建议收藏」

    我的博客日记第一天「建议收藏」这是我开通博客的第一天,也是我的第一个博客,

    2022年4月29日
    41

发表回复

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

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