【minium】微信小程序自动化之旅 (一)

369 阅读2分钟

持续创作,加速成长!这是我参与「掘金日新计划 · 10 月更文挑战」的第11天,点击查看活动详情

最近在研究微信官方提供的,用于微信小程序的UI自动化测试框架 minium,感兴趣的小伙伴一起哦~

前期准备

minium官方文档中明确提供了「运行环境」的要求,如下,环境记得要提前准备好。

因为minium进行小程序自动化测试是需要有小程序源码的,如果是自己公司的项目可以找前端伙伴拿到源码,如果是市面上其他运行的小程序,拿不到源码,minium是无法支持的,可以考虑使用appnium。

这里提供一个微信小程序的开源Demo链接,大家可以将其下载到本地进行小程序自动化的练习。

此外,想要使用微信开发者工具打开小程序,还需要你登录微信开发者工具的微信号是对应小程序的开发者,所以还需要通过微信公众平台注册一个小程序账号,绑定对应的微信号,拿到小程序账号的AppId就可以了。(大家感兴趣的可以私我,我这边有个测试用的小程序可以将对应微信号加为开发者,给大家提供AppId供练习使用)。

将下载的开源Demo进行解压后,在微信开发者工具中打开对应目录,填写小程序的AppId,如下图:

这样就可以成功打开这个开源Demo开启小程序UI自动化测试之旅啦~

minium安装

  • 通过命令安装最新版本的minium
pip3 install https://minitest.weixin.qq.com/minium/Python/dist/minium-latest.zip
  • 通过命令minitest -v检查是否安装成功,如果能正常输出版本号,则说明安装成功

  • 通过命令"path/to/cli" auto --project "path/to/project" --auto-port 9420检查开发者工具自动化能力是否开启

    • path/to/cli是开发者工具cli命令路径。一般来说 macOS: <安装路径>/Contents/MacOS/cli, Windows: <安装路径>/cli.bat
    • path/to/project是存放小程序源码的目录地址,文件夹中包含有project.config.json文件的目录
    • auto-port 自动化端口

出现如下图所示响应即成功,同时也会自动使用微信开发者工具打开对应的小程序。

minium初尝试

接下来就来通过官方提供的一个小例子,尝试用Python完成打印小程序的system info,如下:

import minium

mini = minium.Minium({
    # 替换成你的【小程序项目目录地址】
    "project_path": "/Users/hyp/projects/minitest/wxapp",
    # 替换成你的【开发者工具cli地址】
    "dev_tool_path": "/Applications/wechatwebdevtools.app/Contents/MacOS/cli",
})
print(mini.get_system_info())

启动脚本,可以看到如下图所示,输出具体的系统信息则成功啦,撒花🎉🎉🎉。