什么PO模式?】的更多相关文章

APP自动化跟WEB自动化所使用的框架基本一样,都是采用的PO模式结合pytest框架编写自动化测试脚本,为了提高代码的复用性.稳定性和易维护性,我们针对PO模式进行了二次封装,将日志,等待以及异常截图加入到其中,app相比较web而言,没有鼠标 .下拉框选择.frame切换.窗口切换和上传等操作,但它有属于自己的滑屏.toast获取.上下文切换.应用切换等操作. import time from datetime import datetime import allure from selen…
在PO模式当中,我们做到了页面对象与测试用例的分离,但在页面对象编写时,我们仍然还有优化的空间.页面对象有一些共同的基本操作,可以封装起来,并可以在基本操作当中加上日志和异常截图的处理.比如说我们在查找元素时,都需要等待,在PO模式当中,需要都写上等待和查找元素,那么就可以将其封装起来,包括其它的一些比如:文本获取.元素属性获取.鼠标操作.窗口切换.iframe切换.alert弹框关闭.文件上传.下拉框选择...... 当脚本运行的过程中,出现了用例失败,我们希望可以通过日志和截图来分析失败的原…
一条测试用例可能需要多个步骤操作元素,将每一个步骤单独封装成一个方法,在执行测试用例时调用封装好的方法进行操作.PO模式可以把一个页面分为三个层级,对象库层.操作层.业务层. 对象库层:封装定位元素的方法. 操作层:封装对元素的操作. 业务层:将一个或多个操作组合起来完成一个业务功能. PO模式的设计优点有哪些? 通过页面分层,将测试代码和被测试页面的页面元素及其操作方法进行分离,降低代码冗余 页面对象与用例分离,业务代码与测试代码分离,降低耦合性 不同层级分属不同用途,降低维护成本 代码可阅读…
1 PO模式 1.1 PO模式介绍 Page Object Model 测试页面和测试脚本分离,即页面封装成类,供测试脚本调用. (将项目分为page.py和test.py) 测试用例:就是excel里面一条一条的case,叫作测试用例 测试脚本:将测试用例用代码方式实现出来,py文件. 测试页面:写脚本的时候,经常会获取某个测试页面中的按钮或别的内容,这个页面叫测试页面. 优缺点 优点: 提高了测试用例的可能性 减少了代码的重复 提高测试用例的可维护性,特别是UI频繁改动的项目 缺点: 结构复…
1.PO模式的思想 原理: 将页面的元素定位和元素行为封装成一个page类 类的属性:元素的定位 类的行为:元素的操作 页面对象和测试用例分离 测试用例: 调用所需要页面对象中的行为,组成测试用例 测试用例中,只需要含有页面函数的调用和断言,不应该出现元素定位等其他的操作,如果写测试用例中出现需要其他的额外的操作,可以想办法封装到页面对象或者元素定位中 好处: 当某个页面的元素发生变化,只需要修改该页面对象中的代码即可,测试用例不需要修改 提高代码的重用率,结构清晰,维护代码容易 测试用例发生变…
一.什么是PO模式 全称:page object model  简称:POM/PO PO模式最核心的思想是分层,实现松耦合!实现脚本重复使用,实现脚本易维护性! ​ 主要分三层: 1.基础层BasePage:封装一些最基础的selenium的原生的api方法,元素定位,框架跳转等. 2.PO层:元素定位.获得元素对象,页面动作 3.测试用例层:业务逻辑,数据驱动! 三者的关系:PO层继承继承层,测试用例层调用PO层! 二.什么是自动化测试框架 ​ 说到自动化框架,我相信很多人应该都听过这个词,但…
框架: 1.PO模式应用(测试对象和测试用例分离)(写到简历中) 2.引入ddt 3.深入分层:测试数据分离 4.遵循原则:测试用例的独立性 5.深入分层:元素定位分离 6.框架优化:提取basepage,具备处理异常 日志 截图功能 7.框架优化:使用pytest单元测试框架 8.Jenkins集成,分布式部署 为什么要把业务逻辑从测试逻辑里抽离出来? -PO模式 PageObject 页面中封装成一个对象 ==> 例如:1,DOM document Object Model(将HTML文档表…
PO模式PO是Page Object的缩写,PO模式是自动化测试项目开发实践的最佳设计模式之一.核心思想是通过对界面元素的封装减少冗余代码,同时在后期维护中,若元素定位发生变化, 只需要调整页面元素封装的代码,提高测试用例的可维护性.可读性.PO模式可以把一个页面分为三层,对象库层.操作层.业务层.对象库层:封装定位元素的方法.操作层:封装对元素的操作.业务层:将一个或多个操作组合起来完成一个业务功能.比如登录:需要输入帐号.密码.点击登录三个操作.2.1 引入PO模式的好处引入PO模式前存在大…
一.概要 前面介绍了Puppeteer+jest+TypeScript做UI自动化,但是这知识基础的,我们实现自动化要考虑的很多,比如PO模式,比如配置文件,比如断言等等.下面就来一一实现我是怎么用puppeteer 做UI自动化的 二.断言 (一)需要依赖的安装包 依赖包 命令 Jest npm install jest --save-dev @types/jest npm install @types/jest --save-dev expect-puppeteer npm install…
1.什么是PO模式? PO是Page Object的缩写 PO模式是自动化测试项目开发实践的最佳设计模式之一,讲页面定位和业务操作分开,也就是把对象的定位和测试脚本分开,从而提供可维护性. 主要有以下几种分层方式:1)两层: 对象逻辑层+业务数据层2)三层:对象库层+逻辑层+业务数据层3)四层:对象库层+逻辑层+业务层+数据层 2.PO模式的优势 1)效率高 :PO模式的逻辑层方法有具体定义,元素发生变化修改逻辑层,业务层不变.这样看来结构简单清晰,舒服更符合人类习惯, 普通方式就是继续堆cas…