一文带你上手自动化测试中的PO模式!

自动化测试软件测试项目团队中发挥着重要的作用,同时合理地开展自动化测试,可以有效降低错误修复成本,提高工作效率。

下面就以web自动化测试为例来说明POM模式:python+Selenium+pytest框架下,完成自动化测试用例的编写,管理,运行和出报告,似乎是一项非常简单的工作过程,随在项目进展,特别是迭代频繁的敏捷项目研发方式下,有些自动化测试人员实现的那些低质量测试脚本往往会引发后期高昂的代码维护成本,随着时间的推移所谓的自动化测试变得好像忘了初衷了。

POM模式中解决测试脚本质量低下的一种很实用的方法。下面我来向大家介绍一下POM分离模式的思维:

pom分离:

POM分离 page- object-module--是一种思维。

采用POM目的:为了解决前端中UI变化频繁,从而造成测试自动化脚本维护的成本越来越大。

POM思路:把页面元素和业务逻辑和测试脚本分离开到两个不同的类文件。class A只写页面元素定位,和业务逻辑代码操作的封装,class B只写测试脚本。

POM主要有以下优点:

  1.把web ui对象仓库从测试脚本分离,业务代码和测试脚本分离。

  2.每一个页面对应一个页面类,页面的元素写到这个页面类中。

  3.页面类主要包括该页面的元素定位,和和这些元素相关的业务操作代码封装的方法。

  4.代码复用,从而减少测试脚本代码量。

  5.层次清晰,同时支持多个编写自动化脚本开发,例如每个人写哪几个页面,不影响他人。

  6.建议页面类和业务逻辑方法都给一个有意义的名称,方便他人快速编写脚本和维护脚本。

实例如下:

1.测试脚本

2.业务逻辑

3.界面元素

4.再次封装

5.使用最新封装内容

都说良好的开端是成功的一半,自动化测试框架的落地也是如此,在测试框架实现之前,我们需要全方位考滤后才能设计出面对避无可避的UI元素变更的好的框架。有时候我们第一个想到的是如何将那些变更频率不高的功能模块实现自动化,而对那些变更频率高的功能模块有什么方式能够降低我们未来对于代码调整带来的高昂成本呢?要做到“子落而满盘活”,而不是“牵一发而动全身”。我们是否能对变更进行限制,只动一个地方,并且让每个与之相关的测试脚本都能使用它?答案一定是完全一致肯定的-------POM模式可以帮我们实现。

如果该web页面元素发生了变化,我们只需要在其对应的类文件中进行修改就可以了,而不必在多个不同的脚本去搜索查找并一一更新。这种方法就是页面对象模型(POM),它有助于提高代码的可读性、可维护性和可重用性。

总结:

感谢每一个认真阅读我文章的人!!!

作为一位过来人也是希望大家少走一些弯路,如果你不想再体验一次学习时找不到资料,没人解答问题,坚持几天便放弃的感受的话,在这里我给大家分享一些自动化测试的学习资源,希望能给你前进的路上带来帮助。

软件测试面试文档

我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

 

          视频文档获取方式:
这份文档和视频资料,对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!以上均可以分享,点下方小卡片即可自行领取。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值