自动化测试框架设计模式

自动化测试框架有很多种,常见的自动化框架分类如下:
在使用上面的自动化框架时,通常会结合使用分层思想,也就是一些自动化框架设计模式,今天重点分享一下UI自动化框架设计使用比较多的一种设计模式:Page Object设计模式。
一、什么是PO模式?
PO模式,全称为Page Object Model ,简称POM,是页面对象模式。
对页面进行抽象或建模的过程,把一个具体的页面转化为编程语言当中的一个对象,页面特性转化成对象属性,页面操作转化为对象方法。把页面的元素设计为页面对象的属性,把页面上的操作(如点击、输入等)设计为页面对象的行为。
在自动化测试当中,主要用来实现对页面操作和测试逻辑的一个分离,目的是达到业务和实现分开,使自动化测试脚本具备更高的可维护性。
二、PO模式的做法:
  • 以页面为单位独立建模
  • 隐藏实现细节
  • 本质是面向接口编程
三、PO模式的优点:
  • 减少重复find click样板代码
  • 提高易读性
  • 页面修改不影响测试用例
四、PO模式六大设计原则:
  1. 用公共方法代表UI所提供的功能,比如把登录封装成一个 login 方法,把搜索方法封装成一个设施方法,把注册操作封装成一个 register 的方法
  2. 方法应该返回其他的Page Object或者返回用于断言的数据
  3. 同样的行为不同的结果可以建模为不同的方法,比如说登录成功有跳转,登录失败有报错,还有一种登陆授权的状况,那么可以封装成三个单独的方法:login success、login error、login invalid
  4. 不在方法内加断言,做到页面逻辑和测试逻辑的分离
  5. 不暴露页面的内部元素给外部,比如一个HTML的页面还有一个页面的上下结构
  6. 不需要建模UI内的所有元素,用到什么逻辑就封装什么
五、UI自动化测试用例如何设计
UI自动化测试用例是从手工测试用例中提取出来的,跟手工测试用例相比,自动化测试用例更加注重用例的严谨性,选择用例的时候遵循以下原则:
  • 优先选取覆盖产品核心功能的用例;
  • 从成本考量,不要选择流程过于复杂的用例;
  • 选取的用例可以是重复执行,繁琐的部分,比如字段验证、提示信息验证;
  • 优先实现正向的测试用例,反向用例一般情况复杂、数量多;
六、怎么提高UI自动化脚本的稳定性
  • 尽量用相对路径的xpath表达式
  • 查找元素优先用显示等待
  • 用例与用例之间尽量避免产生依赖,用例可以独立执行
  • 用例执行结束后对测试场景进行还原,避免影响其他用例的执行
  • 脚本执行失败后加入重试机制,提升用例的稳定性
  • 尽量保证单独的测试环境,避免其他的测试同步进行

欢迎关注公众号:测试记

  • 2
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值