Fork me on GitHub

微信小程序-自动化

这边将介绍微信小程序自动化内容,官方文档

小程序自动化 SDK 本身不提供测试框架。这意味着你可以将它与市面上流行的任意 Node.js 测试框架结合使用,以此来达到编写小程序测试用例的目的。

官方使用 Jest 测试框架来编写小程序自动化测试(需要自己去学习)

运行环境:

  • 安装 Node.js 并且版本大于 8.0
  • 基础库版本为 2.7.3 及以上
  • 开发者工具版本 v1.02.1907232及以上:目前我使用的是stable v1.02.1911180(稳定版)

开发者工具稳定版下载:https://developers.weixin.qq.com/miniprogram/dev/devtools/stable.html


初始化:

  1. 下载小程序Demo示例的源码到本地,然后打开小程序工具,将该项目导入进去。
  2. 新建文件夹 miniprogram-demo-test 放置测试代码。

  1. 命令行执行以下命令安装依赖

    1
    2
    3
    npm i miniprogram-automator --save-dev    //在需要测试的项目目录下安装小程序自动化SDK
    npm i miniprogram-automator jest //Jest依赖
    npm i jest -g //Jest依赖
  1. 打开开发者工具中CLI/HTTP 调用功能

    必须开启以上选项,否则 SDK 将无法正常启动工具自动化功能。

  • 打开微信开发者工具
  • 选择【设置】
  • 选择【安全设置】
  • 选择【安全】
  • 勾选【开启】按钮


编写自动化测试脚本

  1. 创建测试文件index.js
  2. 编写测试脚本,思路如下
    • 启动并连接工具
    • 重新启动小程序到首页
    • 断开连接并关闭工具
  3. 对应脚本如下
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
const automator = require('miniprogram-automator')

describe('【小程序自动化测试】', () => {
let miniProgram
let page

beforeAll(async () => {
miniProgram = await automator.launch({ // 第一步:启动并连接工具
projectPath: '/Users/white/Desktop/demo/miniprogram-demo' // /Users/white/Desktop/demo/miniprogram-demo 为项目在电脑本地位置
})
page = await miniProgram.reLaunch('/page/component/index') // 第二步:重新启动小程序到首页
await page.waitFor(500)
}, 30000)

afterAll(async () => {
/**
* miniProgram.close() 表示:断开与小程序运行时的连接并关闭项目窗口
* miniProgram. disconnect() 表示:断开与小程序运行时的连接
*/
await miniProgram.close() //第三步:断开连接并关闭工具或者使用
})
})

执行脚本,查看执行结果

  1. 执行脚本,命令行输入:
    jest miniprogram-demo-test/index.js /Users/white/Desktop/demo/miniprogram-demo

miniprogram-demo-test/index.js 为测试脚本路径

/Users/white/Desktop/demo/miniprogram-demo 为项目在电脑本地位置

------------- The End -------------

本文标题:微信小程序-自动化

文章作者:White

发布时间:2020年03月03日 - 17:03

最后更新:2020年03月04日 - 16:03

原始链接:http://yoursite.com/2020/03/03/WX-automator/

许可协议: 署名-非商业性使用-禁止演绎 4.0 国际 转载请保留原文链接及作者。