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

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

被折叠的 条评论
为什么被折叠?



