首页 技术 正文
技术 2022年11月10日
0 收藏 987 点赞 4,566 浏览 848 个字

POM简介、POM优势、如何设计POM


POM简介

Page Object Model (POM) 直译为“页面对象模型”,这种设计模式旨在为每个待测试的页面创建一个页面对象(class),将那些繁琐的定位操作封装到这个页面对象中,只对外提供必要的操作接口,是一种封装思想。

POM是什么

页面根据系统或者模块来管理

例如:xx系统或模块,涉及到哪几个页面

元素根据页面来进行管理

例如:测试xx页面,需要用到哪些元素


POM的优势

为什么要使用POM

少数的自动化测试用例维护起来看起来是很容易的。但随着时间的迁移,测试套件将持续的增长。脚本也将变得越来越臃肿庞大。如果变成我们需要维护10个页面,100个页面,甚至1000个呢?而且页面元素很多是公用的。那页面元素的任何改变都会让我们的脚本维护变得繁琐复杂,而且变得耗时易出错。

POM好处有哪些?

让UI自动化更早介入项目中,可项目开发完再进行元素定位的适配与调试

POM 将页面元素定位和业务操作流程分开,分离了测试对象和测试脚本.

如果UI页面元素更改,测试脚本不需要更改,只需要更改页面对象中的某些代码就可以

POM能让我们的测试代码变得可读性更好,高可维护性,高复用性,

可多人共同维护开发脚本,利于团队协作


如何设计POM

页面对象模型(POM)是一种设计模式,用来管理维护一组web元素集的对象库

在POM下,被测项目的每一个页面都有一个对应的page class

每一个page class维护着该web页的元素定位集和

每一个page class维护着该web页的操作这些元素的方法

login_page.py 文件,作用是管理登录页面的元素

common.py文件,作用是封装一些常用的方法,比如等待,发送信息等

TestCase测试用例

总结:
如果对软件测试、接口测试、自动化测试、性能测试、持结集成、面试经验交流。感兴趣可以893694563,群内会有不定期的发放免费的资料链接,这些资料都是从各个技术网站搜集、整理出来的,如果你有好的学习资料可以私聊发我,我会注明出处之后分享给大家。

相关推荐
python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
日期:2022-11-24 点赞:878 阅读:9,492
Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
日期:2022-11-24 点赞:807 阅读:5,907
下载Ubuntn 17.04 内核源代码
zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
日期:2022-11-24 点赞:569 阅读:6,740
可用Active Desktop Calendar V7.86 注册码序列号
可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
日期:2022-11-24 点赞:733 阅读:6,495
Android调用系统相机、自定义相机、处理大图片
Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
日期:2022-11-24 点赞:512 阅读:8,133
Struts的使用
一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
日期:2022-11-24 点赞:671 阅读:5,297