脚本宝典收集整理的这篇文章主要介绍了Selenium系列(8)- PO模式,脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
本文转载自小菠萝的测试笔记
读取数据,将固定格式的数据进行拼接【读取数据】
拼接后的内容作为关键字所需要的参数,进行传入【传入数据】
调用关键字,将执行结果和预期结果进行对比,从而获取单条测试用例执行是否通过的结果【执行关键字,断言结果】
关键字驱动+数据驱动是一种设计模式哦!
PO模式是page object model的缩写,是一种设计模式
把待测页面当成一个页面对象,一般包含了元素对象的定位和元素操作方法,将页面对象和真实的网站页面一 一映射起来
比如一个登录页面,使用PO模式后,操作的步骤如下:
会先创建一个class,该class就是登录页面对象类
类的属性:用户名输入框,密码输入框,登录按钮的webElenent
类的方法:各种元素操作的方法
方法里面会调用对象库层的二次封装Selenium的方法
测试层从页面操作层调用操作方法,写成测试用例,这种模式可以做到定位元素与测试用例分离
所以这样的设计理念就是PO模式
对象库层:二次封装Selenium的方法
页面操作层(也称:逻辑层):封装页面的元素对象和元素操作
测试层(也称:业务层):多个页面操作完成一个业务测试,一般结合单元测试框架(unITtest、pytest)来测试
对象库层:二次封装Selenium的方法
页面层:封装页面的元素对象
操作层:封装页面的元素操作
测试层:多个页面操作完成一个业务测试
升级到PO模式之后,首先将Selenium常用的功能,结合实际业务需要进行二次封装;封装的内容是完全贴合实际业务来实现的【封装Selenium】
将元素对象和元素操作进行整合【元素对象整合】
将对象库和测试代码分离,实现数据与代码分离【数据与代码分离】
代码冗余明显降低:二次封装Selenium方法和提取公共方法,提高代码复用性
代码的阅读性明显提升:因为三层分级,将不同内容进行不同的封装,整体代码阅读性提升
代码维护性明显提升:UI测试中,页面若经常变动,代码的维护量随之增多;因为三层分级,我们只需要修改页面对象的代码,如元素对象或者操作对象的方法,不用修改测试用例的代码,也不影响测试用例的正常执行
降低代码耦合性1. 1. 1. *
以上是脚本宝典为你收集整理的Selenium系列(8)- PO模式全部内容,希望文章能够帮你解决Selenium系列(8)- PO模式所遇到的问题。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。