自用推荐!一款腾讯开发的小程序自动化测试框架:minitest!

由于最近公司开发了微信小程序,接口自动化已经实现,最近在考虑怎么实现UI的自动化,于是在网上找到了这款腾讯官方开发的小程序自动化框架minitest

下面是官方对该框架的介绍:

  • 支持一套脚本,iOS & Android & 模拟器,三端运行

  • 提供丰富的页面跳转方式,看不到也能去得到

  • 可以获取和设置小程序页面数据,让测试不止点点点

  • 可以直接触发小程序元素绑定事件

  • 支持往 AppSerive 注入代码片段执行

  • 可以调用部分 wx 对象上的接口

  • 支持 Mock wx 对象上的接口

  • 支持 Hook wx 对象上的接口

  • 通过 suite 方式管理用例,config 管理运行设备

下面简单介绍下自己框架的使用过程:

一、运行环境

python3.8以上,微信开发者工具安全设置打开,微信的版本大于7.0.7

二、安装minium库

pip3 install minium

三、环境检查

1.minium安装完成后,可执行以下命令查看版本:

minitest -vCopy to clipboardErrorCopied

出现如以下内容的构建信息则已安装成功

{'version': '1.1.0', 'revision': '2fac2e36c281213874110f2088bc08c570bc1a2d', 'branch': 'master', 'update_at': '2021-08-05 21:17:09'}Copy to clipboardErrorCopied

2.开发者工具自动化能力检查

"path/to/cli" auto --project "path/to/project" --auto-port 9420

四、开始第一个简单的例子

import minium
mini = minium.Minium({
    "project_path": "path/to/project",   # 替换成你的【小程序项目目录地址】
    "dev_tool_path": "path/to/cli",      # 替换成你的【开发者工具cli地址】,macOS: <安装路径>/Contents/MacOS/cli, Windows: <安装路径>/cli.bat
})
print(mini.get_system_info())Copy to clipboardErrorCopied

输出内容类似以下

{'model': 'iPhone 5', 'pixelRatio': 2, 'windowWidth': 320, 'windowHeight': 456, 'system': 'iOS 10.0.1', 'language': 'zh_CN', 'version': '8.0.5', 'screenWidth': 320, 'screenHeight': 568, 'SDKVersion': '2.16.0', 'brand': 'devtools', 'fontSizeSetting': 16, 'benchmarkLevel': 1, 'batteryLevel': 71, 'statusBarHeight': 20, 'safeArea': {'top': 20, 'left': 0, 'right': 320, 'bottom': 568, 'width': 320, 'height': 548}, 'deviceOrientation': 'portrait', 'platform': 'devtools', 'enableDebug': False, 'devicePixelRatio': 2}Copy to clipboardErrorCopied

代码中的配置,需要在config.json文件中配置小程序的代码路径(需要编译完成的,这个源码是使用uniapp进行开发的,所以需要打包成微信小程序后才能生效),微信开发者工具的地址

suite.json文件中写下文件的匹配规则,case_list是测试用例的匹配规则,这个地方也就是需要匹配test开头的所有文件,pkg的匹配规则是指包的匹配规则

五、代码截图

这个使用的还是unittest的框架,下面是一些代码的截图

其实本质上也是根据id,name,css等对元素进行定位,然后断言页面是否存在对应的字段或者链接,弹框是否正确等。

以上配置完成了会自动打开本地的微信开发者工具来进行测试,测试报告的生成可以使用命令生成,这是官方给出的生成测试报告的方法,但是在实际使用过程中发现会报错:

1.  本地执行` python3 -m http.server 12345 -d /path/to/dir/of/report  `,然后浏览器输入:`http://localhost:12345/`

PS: *其中`/path/to/dir/of/report`为上文的`output_path`*

基于上述报告生成报告,后面发现微信开发者工具提供了一个云测平台,可以直接将脚本导入到云测平台执行脚本,而且是直接在真机上运行,比在微信开发者工具上更接近真实的业务场景,而且可以很方便的查看报告并且分享给其他成员,可以进行团队管理 从开发者工具右上角的云测点击进入:

1、导入用例:

2.新建计划:

新建计划过程中可以选择需要执行的用例个数以及执行的顺序,可以单个执行也可以批量执行

3.新建任务

打开云测的界面,可以新建任务,选择minium测试类型,选择计划,自行选择测试平台和测试时长,小程序版本,微信版本以及是否需要操作过程的截图等(这个比较好的一点是,每周可以有150分钟的免费时间,而且失败会自动返还时间,对于一般的项目来说还是够用的)。

同时还可以选择monkey类型测试,录制回放,质检类型,根据需要进行选择。

创建完成后在任务列表可以查看到。

测试结束后可以看到通过率,点击详情按钮可以查看每个脚本的执行情况,以及报错的具体信息方便定位问题。

最后: 下方这份完整的软件测试视频教程已经整理上传完成,需要的朋友们可以自行领取【保证100%免费】

软件测试面试文档

我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

在这里插入图片描述

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值