微信小程序自动化测试——自定义测试(Minium)

本文详细介绍微信小程序自定义测试框架Minium,涵盖用例编写、处理API、原生控件操作、数据驱动测试,以及云测服务执行的优势。通过实例展示如何利用Minium进行复杂场景测试和DevOps集成,提高测试效率和维护成本

前文 微信小程序自动化测试——录制回放 提到录制回放 支持输入,文本查找,断言等自动化测试基础操作,无需编写代码,用例生成效率高,但是部分操作不支持,对复杂业务场景有局限性。如果用户希望适用复杂的业务场景,自主制定测试场景,可以尝试 自定义测试(Minium)方案。

小程序测试框架 Minium 是微信测试团队为小程序开发或测试同学提供的一套测试接口,它实现了miniprogram-automator 中小程序自动化所有能力,如可以直接触发小程序页面元素,设置页面数据,向AppService注入代码片段,Mock/Hook wx对象的接口等。此外,他还支持并封装了所有的原生操作都进行了封装,屏蔽了iOS/Android底层差异,实现了一套脚本在三端同时运行

用户写好的Minium脚本,可以再本地执行,也可以直接上传到微信小程序云测服务执行,无需准备和维护真机环境。下面本文介绍自定义测试的流程

一、 编写用例

编写小程序自动化测试脚本,常见操作包括:

  • 基本操作:如页面跳转,元素定位及相关操作
  • 处理小程序API
  • 处理小程序的原生控件,如处理授权弹窗
  • 支持数据驱动测试

基本操作

对小程序页面元素定位,元素操作,或页面跳转等。简单的UI测试,例如以下用例

class FirstTest(minium.MiniTest):    
      def test_network(self):
          # 页面跳转
          self.app.navigate_to("/packageAPI/pages/get-network-type/get-network-type")
          # 元素定位
          ele = self.page.get_element("button", inner_text="获取手机网络状态")
          # 元素点击
          ele.click()
          # 打印元素文本
          self.logger.info(self.page.get_element("/page/view/view[2]/view/view[1]/text").inner_text)          

处理小程序API

Minium框架提供处理小程序开放API方法,根据需求选择相应方法,例如

  • mock_wx_method() — mock掉小程序API的调用
  • hook_wx_method() — hook小程序API的调用
  • call_wx_method() — 调用小程序的API

更多接口方法参考 Minium接口

调用小程序API获取回调信息用例,例如

class FirstTest(minium.MiniTest): 
    def test_call_wx_method(self)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值