小程序自动化测试框架Python3+Minium+微信开发者工具

本文详细介绍了一套基于Python3+Minium+微信开发者工具的小程序自动化测试框架搭建流程,包括环境配置、源码文件安装及验证步骤。

今天跟大家一起学习一套小程序自动化框架:Python3+Minium+微信开发者工具

前置:已安装Python3环境

1. 查询python版本号

1.1 打开cmd>>输入python -V 查询版本


2. 安装minium前端源码文件

2.1下载minium-doc:https://git.weixin.qq.com/minitest/minium-doc

2.2. 安装相关环境配置

2.3. 安装docsify

2.4. 安装依赖

2.5. 本地部署

2.6. 验证是否部署成功

访问http://localhost:3000/#/  如下图就是部署成功

3. 安装minium后端源码文件至Python库

3.1 下载https://git.weixin.qq.com/minitest/minium-doc/blob/master/minium/Python/dist/minium-1.0.6.zip

3.2 下载成功后,解压到本地,使用管理员打开cmd,执行python setup.py install 命令

3.3 去python3路径下验证包是否安装成功\Lib\site-packages目录下

3.4 微信开发者工具配置命令行启动;配置微信开发者工具的环境变量

3.5 Copy安装路径到bin目录上一层级,E:\微信开发者工具\微信web开发者工具

在系统设置中配置环境变量 电脑>>右击属性>>高级系统配置>>环境标量配置

3.6 cmd执行命令使用命令行,打开要测试的小程序项目(命令行路径部分是你自己项目的路径,需要小程序项目的源代码—testDemoPath就是为你源代码本地的路径)

执行命令:cli auto --project testDemoPath --auto-port 9420

执行完毕后,查看小程序项目是否被成功唤醒(笔者这里暂时还没拿到项目源代码文件)后期再进行补充

注:针对执行以上命令不能够正常打开项目的解决方案:https://blog.csdn.net/m0_38043408/article/details/106380299

总结:以上主要是针对环境的安装以及配置进行讲解,后期在针对项目TestCase进行讲解,case也是基于python代码,可以使用pycharm进行编写

小编也是刚开始学习,希望大家跟我一起探索!支持小编,分享一波

获取相关个人整理的word资料

进行加群

更多精彩好文,请关注小编个人号

推荐阅读

接口、压力测试入门终极指南

面试官:" 如何判断一个APP页面是原生的还是H5页面 "

HR:"小程序的测试要点分析的狠好,测试总监将你评级为中级 "

<think>嗯,用户需要推荐Python微信小程序自动化测试框架。首先需要回顾一下之前的引用内容,特别是关于minium框架的信息。引用[1]提到minium是专为小程序开发的自动化框架,有Python版本,支持UI测试和API模拟。引用[2]说明它基于unittest,环境需要微信开发者工具。引用[3]和[4]补充了命令行工具使用方法。 用户的核心需求是Python语言的框架推荐,所以minium明显是最匹配的。需要确认它是否满足用户可能关心的其他方面:比如功能覆盖是否全面,是否支持最新微信版本,社区支持如何。根据引用内容,minium不仅可以做UI自动化,还能跳转页面和mock数据,这点比单纯UI测试工具更有优势。 环境依赖部分需要强调,用户可能容易忽略开发工具安装和端口配置。引用[4]提到命令行路径问题,Windows和Mac的差异要说明清楚。测试用例编写部分,基于unittest的结构对Python用户来说应该比较友好,引用[2]的MiniTest框架可以继承标准断言方法。 用户可能存在的潜在疑问:是否有替代方案?比如Appium虽然也能测小程序,但需要切换上下文,效率不如原生框架minium直接调用小程序API,稳定性更高。是否需要补充性能对比数据?引用中没有提到,暂时不添加推测内容。 最后整理回答结构:先明确推荐minium,分点说明优势(原生支持、功能深度、Python适配),然后详细列出实施步骤,最后补充常见问题。相关问题设计要引导用户深入,比如如何解决特定控件定位问题,这在实际测试中很常见。</think>基于您的需求,**minium** 是当前最成熟且官方推荐的 Python 微信小程序自动化测试框架。以下是详细推荐理由和实施指南: --- ### 🛠️ **一、minium 框架核心优势** 1. **官方深度支持** - 由微信团队开发,完美适配小程序架构,支持 **UI 自动化、API Mock、页面跳转与数据注入**[^1]。 - 直接调用小程序底层接口,无需依赖 WebView 上下文切换(如 Appium),执行效率更高。 2. **功能全面性** - **UI 自动化**:支持原生组件(如地图、视频)的定位与操作,通过 `uiautomator`(Android)和 `WDA`(iOS)补充原生控件能力[^1]。 - **非 UI 测试**:可模拟小程序生命周期函数、路由跳转、网络请求拦截等[^2]。 - **调试便捷**:支持命令行快速编译、刷新项目并启动调试器[^3]。 3. **Python 友好性** - 提供基于 `unittest` 的测试框架 `MiniTest`,可直接使用 `assert` 断言方法[^2]。 - 语法简洁,示例丰富,降低学习成本。 --- ### ⚙️ **二、环境搭建步骤** 1. **依赖安装** ```bash pip install minium # 安装minium ``` - 需提前安装 **微信开发者工具** 并开启服务端口(设置 → 安全 → 服务端口:打开)[^2]。 2. **项目配置** - 在项目根目录的 `project.config.json` 中确认 `appid` 和 `projectname` 字段正确[^3]。 3. **启动测试** ```bash # 启动自动化测试(示例) minium -p /项目绝对路径 --auto-reload True ``` - `--auto-reload`:每次执行自动编译刷新并打开模拟器[^3]。 --- ### 📝 **三、基础测试用例示例** ```python import minium class TestLogin(minium.MiniTest): def test_login_success(self): # 跳转到登录页 self.app.navigate_to("/pages/login/login") # 输入用户名密码 self.page.get_element("#username").input("test_user") self.page.get_element("#password").input("123456") # 点击登录按钮 self.page.get_element(".login-btn").click() # 验证登录后跳转首页 self.app.wait_util(0) # 等待页面渲染 self.assertTrue(self.app.current_path == "/pages/index/index") ``` --- ### ⚠️ **四、常见问题解决** - **命令行报错 "cli not found"** Windows 需将开发者工具安装路径(如 `C:\Program Files (x86)\Tencent\微信web开发者工具`)加入系统环境变量,或使用绝对路径调用 `cli.bat`[^4]。 - **真机调试支持** Minium 支持真机测试,需在开发者工具中登录微信账号并点击真机调试按钮。 --- ### ❓ **相关问题** 1. 如何定位 minium 无法识别的自定义组件? 2. minium 能否与持续集成工具(如 Jenkins)结合使用3. 在小程序多页面交互场景中,minium 如何管理页面栈状态? 4. 如何用 minium 模拟支付、授权等微信原生 API 调用? > 引用文献: > [^1]: minium 支持 UI 自动化测试、函数 mock 及原生组件补充测试。 > [^2]: minium 基于 unittest 开发,需依赖微信开发者工具环境。 > [^3]: 命令行需指定项目绝对路径且配置正确的 project.config.json。 > [^4]: Windows 系统需配置开发者工具的 cli 路径到环境变量。
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值