当前位置: 首页 > news >正文

Web UI自动化测试--PO模式

没有PO实现的测试用例的问题:

  • 重用性低:登录功能重复
  • 可维护性差:数据和代码混合
  • 可读性差:元素定位方法杂乱(id、xpath、css混杂)
  • 可读性差:不易识别操作的含义(特别是css和xpath语法)
  • 可维护性差:如果某个元素的属性改了,你要更改多次

PO(Page Object Model)页面对象模型,是自动化测试项目开发实践的最佳设计模式之一,相同的操作(但可能是不同的数据)带来的不同的结果可以封装成不同的方法。

分层模型
表现层:页面中可见的元素,都属于表现层。(元素定位器的编写)
操作层:对页面可见元素的操作。点击、输入文本、获取文本等。(基类)
业务层:上面2层的组合,并联合到一起形成某个业务动作,在页面中对若干元素操作后所实现的功能。(页面类的方法,也可以是多个页面的组台)
测试用例就是组合了1个或多个页面的方法,操作对应的元素,完成的测试。测试用例本身不在PO内。换句话来说,模块下的页面,页面中元素许多动作形成业务。

架构模型
在这里插入图片描述

项目结构
common:公共模块,比如基类、定位器、浏览器
configs:配置文件
docs:项目文档
outFiles:logs日志、reports报告、screensho

http://www.lryc.cn/news/346859.html

相关文章:

  • Python进阶之-反射机制详解
  • day05-面向对象内存原理和数组
  • 从头理解transformer,注意力机制(下)
  • ORA-609频繁出现在alert.log,如何解决?
  • JVM 类加载机制
  • 亲测-wordpress文章实时同步发布修改删除多个站点的WP2WP插件
  • npm无法安装node-sass 的问题
  • springboot 引入第三方bean
  • 安装Nginx
  • 爬虫工具you-get
  • hal_stm32_RTC函数
  • 【大数据·Hadoop】从词频统计由浅入深介绍MapReduce分布式计算的设计思想和原理
  • win10建立共享文件夹和ipad共享文件
  • 手机在网状态多方面重要性
  • Multitouch for Mac:手势自定义,提升工作效率
  • IDEA创建springboot项目时不能选择java 8或者java 11等等版本的问题,解决方案
  • SpringCloudAlibaba:4.3云原生网关higress的JWT 认证
  • 【机器学习】Reinforcement Learning-强化学习基本概念
  • vim编辑器---(1)vim编辑器介绍?
  • 解密 Unix 中的 “rc“ 后缀:自定义你的工作环境
  • Java使用csv导出多字段大数据文件(无需写实体映射,自动遍历)
  • Redis 本机无法访问
  • 【论文笔记】Training language models to follow instructions with human feedback B部分
  • stm32——OLED篇
  • 重卡生产流程的可视化管理与优化
  • 软考-软件工程
  • Agent AI智能体:未来社会的角色、发展路径与挑战
  • Vue 3.x组件生命周期
  • onnx模型截取部分
  • 中职智慧校园建设内容规划