minium-小程序自动化测试框架

这篇具有很好参考价值的文章主要介绍了minium-小程序自动化测试框架。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

提起 UI 自动化测试,web 端常用 Selenium,手机端常用 Appium,那么很火的微信小程序可以用什么工具来进行自动化测试?本篇将介绍一款专门用于微信小程序的自动化测试工具 - minium。

简介

minium 是为小程序专门开发的自动化框架, 提供了 Python 和 JavaScript 版本。使用 minium 可以进行小程序 UI 自动化测试, 但是 minium 的功能不止于仅仅是 UI 自动化, 甚至可以使用 minium 来进行函数的 mock, 可以直接跳转到小程序某个页面并设置页面数据, 做针对性的全面测试。

特性:

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

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

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

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

5、支持往 AppSerive 注入代码片段

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

官方文档:

https://run-noob.github.io/minium-doc-github/#/minium/Python/readme

安装

1、环境要求(Python 版本):
Python 3.x

微信公共库版本 >= 2.7.3

安装 稳定版微信开发者工具

如果要测 Android,下载 微信测试包

2、安装:

(1)微信开发者工具-设置-安全设置,开启安全模式。

minium-小程序自动化测试框架,软件测试,技术分享,小程序,职场和发展,开发语言

(2)安装 minium

pip install minium
  • 1

快速上手

1、使用开发者工具的命令行工具,输入命令打开测试小程序。

/Applications/wechatwebdevtools.app/Contents/MacOS/cli --auto /Users/wangmeng/WeChatProjects/testdemo --auto-port 9420
  • 1

注:
(1)这里的 --auto-port 填写 9420,不是开发者工具安全模式的端口。

(2)确保开发者工具登录的微信号具备被测小程序的开发者权限。

(3)/Applications/wechatwebdevtools.app/Contents/MacOS/cli 命令行工具所在位置。

Mac: <安装路径>/Contents/MacOS/cli

Windows: <安装路径>/cli.bat

(4)/Users/wangmeng/WeChatProjects/testdemo 小程序工程的路径(例如官方的小程序示例)。

输入后,成功打开对应的小程序。

minium-小程序自动化测试框架,软件测试,技术分享,小程序,职场和发展,开发语言

命令行输出:Open project with automation enabled success,表示成功。

minium-小程序自动化测试框架,软件测试,技术分享,小程序,职场和发展,开发语言

2、确认开发者工具调试基础库版本 >= 2.7.3。

minium-小程序自动化测试框架,软件测试,技术分享,小程序,职场和发展,开发语言

3、打开 IDE,如 PyCharm,创建示例代码。

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# 公众号:伤心的辣条

import minium

mini = minium.Minium()
system_info = mini.get_system_info()
print(system_info)

执行结果,成功打印出系统信息。

minium-小程序自动化测试框架,软件测试,技术分享,小程序,职场和发展,开发语言

如果想在手机上运行脚本,可以点击开发者工具的真机调试,连接成功后,再次运行脚本,脚本就会在手机上面运行。

minium-小程序自动化测试框架,软件测试,技术分享,小程序,职场和发展,开发语言

连接成功。

minium-小程序自动化测试框架,软件测试,技术分享,小程序,职场和发展,开发语言

再次执行后,可以看到打印出的是手机上的系统信息。

minium-小程序自动化测试框架,软件测试,技术分享,小程序,职场和发展,开发语言

测试框架

minium 提供一个基于 unittest 封装好的测试框架。

测试基类 MiniTest 会根据测试配置进行测试,minitest 向上继承了 unittest.TestBase。

示例代码,2条用例,每条用例都加上了断言。

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# 公众号:伤心的辣条
import minium
import time

class MyTest(minium.MiniTest):
    def test_view(self):
        self.page.get_element("view", inner_text="视图容器").click()
        self.page.get_element(".navigator-text", inner_text="swiper").click()
        self.page.get_elements("switch")[0].click()
        self.page.get_elements("switch")[1].click()
        assertValue1 = self.page.get_element(".weui-cell__bd").text
        self.assertEqual("指示点", assertValue1)
        time.sleep(0.5)
        self.app.navigate_back()

    def test_form(self):
        self.page.get_element("view", inner_text="表单组件").click()
        self.page.get_element(".navigator-text", inner_text="textarea").click()
        self.page.get_element("page > view > view > view:nth-child(1) > view.textarea-wrp > textarea").click()
        self.page.get_element("page > view > view > view:nth-child(1) > view.textarea-wrp > textarea").input("小程序自动化测试")
        assertValue2 = self.page.get_element("page > view > view > view:nth-child(1) > view.textarea-wrp > textarea").text
        self.assertIn("小程序", assertValue2)
        time.sleep(0.5)
        self.app.navigate_back()

执行结果,2条用例执行成功。

minium-小程序自动化测试框架,软件测试,技术分享,小程序,职场和发展,开发语言

自动生成 outputs 目录,将测试数据输出到 outputs 目录里,里面包含一个简易的测试报告。

minium-小程序自动化测试框架,软件测试,技术分享,小程序,职场和发展,开发语言

打开命令行,跳转到脚本项目目录里,输入:

python -m http.server 8080 -d outputs
  • 1

在浏览器中输入 http://localhost:8080/ 可以查看测试报告。

minium-小程序自动化测试框架,软件测试,技术分享,小程序,职场和发展,开发语言

执行日志。

minium-小程序自动化测试框架,软件测试,技术分享,小程序,职场和发展,开发语言

如果不想在 IDE 上运行,只想在命令行上运行用例。

在项目的根目录上创建 suite.json 文件。

文件内容:

{
    "pkg_list": [
        {
            "pkg": "case.*",
            "case_list": [
                "test_*"
            ]
        }
    ]
}

项目结构,case 目录存放测试用例。

minium-小程序自动化测试框架,软件测试,技术分享,小程序,职场和发展,开发语言

打开命令行,跳转到脚本项目目录里(testdemo123 编写的脚本项目),输入:

miniruntest -s suite.json
  • 1

加载用例开始执行。

minium-小程序自动化测试框架,软件测试,技术分享,小程序,职场和发展,开发语言

如果想在手机上运行脚本(如 Android),只需要在用例目录下创建 config.json 配置文件即可。

{
    "debug_mode": "info",
    "enable_app_log": false,
    "platform": "Android"
}

然后连接手机,并且保证 adb devices 能够识别到手机,之后命令行输入执行命令就可以了。

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

minium-小程序自动化测试框架,软件测试,技术分享,小程序,职场和发展,开发语言

软件测试面试文档

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

minium-小程序自动化测试框架,软件测试,技术分享,小程序,职场和发展,开发语言
minium-小程序自动化测试框架,软件测试,技术分享,小程序,职场和发展,开发语言文章来源地址https://www.toymoban.com/news/detail-837204.html

到了这里,关于minium-小程序自动化测试框架的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 微信小程序自动化框架的搭建python+minium

    公司要求做小程序的自动化,网上找各种资料,最后确定使用腾讯自研的框架minium,虽然版本已经不继续维护更新了,但是不影响我们使用来做自动化开发。 minium提供一个基于unittest封装好的测试框架,MiniTest是minium中继承自unittest.TestCase的测试基类, 你可以在testcase中使用框

    2024年02月11日
    浏览(49)
  • 微信小程序自动化测试——自定义测试(Minium)

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

    2024年02月11日
    浏览(52)
  • 微信小程序UI自动化测试实践:Minium+PageObject

    小程序架构上分为 渲染层 和 逻辑层 ,尽管各平台的运行环境十分相似,但是还是有些许的区别(如下图),比如说JavaScript 语法和 API 支持不一致,WXSS 渲染表现也有不同,所以不论是手工测试,还是UI自动化测试,都必须要在 iOS 和 Android 上分别检查小程序的真实表现。

    2024年04月09日
    浏览(46)
  • 教你如何使用自定义测试(Minium)进行微信小程序自动化测试

    目录 前言: 一、 编写用例 基本操作 处理小程序API 处理小程序原生控件 数据驱动 二、 执行用例 本地执行 云测服务测试 三、 最佳实践 四、总结 前言: 微信小程序自动化测试是保障小程序质量的重要手段,Minium是一个可为微信小程序编写自定义测试的自动化测试框架。它

    2024年02月09日
    浏览(53)
  • 软件测试 | 测试开发 | Django+Celery框架自动化定时任务开发

    ** 本章介绍使用DjCelery即Django+Celery框架开发定时任务功能,在Autotestplat平台上实现单一接口自动化测试脚本、业务场景接口自动化测试脚本、App自动化测试脚本、Web自动化测试脚本等任务的定时执行、调度、管理等,从而取代Jenkins上的定时执行脚本和发送邮件等功能。** 自动

    2023年04月08日
    浏览(51)
  • 【软件测试】UI自动化框架,数据驱动 vs 关键字驱动怎么选

    让我们先从分析一端自动化测试案例的代码开始我们的旅程。以下是我之前写的一个自动化测试的小Demo。这个Demo 基于Selenium与Java 。 自动化测试小Demo 它要测试的东西其实是要看一下百度搜索能不能返回兴业银行的官网。我们分析一下这段代码都包含些什么东西。 第一,这

    2024年02月13日
    浏览(53)
  • 小程序自动化之minium

    本文采用微信开发者工具和minium进行编码 官方文档:小程序云测-MiniTest 1.  python安装minium第三方库,执行minium -v 验证      2. 下载微信开发者工具文档版本 下载链接: 微信开发者工具下载地址与更新日志 | 微信开放文档  3. 设置微信开发者工具 4. 找开发要源代码 1. cases:  测试

    2024年02月09日
    浏览(33)
  • 初识小程序自动化 & Jest测试框架

    2024软件测试面试刷题,这个小程序(永久刷题),靠它快速找到工作了!(刷题APP的天花板)-CSDN博客 文章浏览阅读1.9k次,点赞85次,收藏11次。你知不知道有这么一个软件测试面试的刷题小程序。里面包含了面试常问的软件测试基础题,web自动化测试、app自动化测试、接口

    2024年02月02日
    浏览(31)
  • 微信小程序的自动化测试框架

    微信发布了小程序的自动化测试框架Minium,提供了多种运行验证方式,其特点: 支持一套脚本,iOS Android 模拟器,三端运行 提供丰富的页面跳转方式,看不到也能去得到 可以获取和设置小程序页面数据,让测试不止点点点 可以直接触发小程序元素绑定事件 支持往 AppSerive

    2024年02月04日
    浏览(45)
  • 【软件测试/自动化测试】WebDriver+Selenium实现浏览器自动化

    前言 使用场景 原理 环境准备  开发 First Script WebDriver API 浏览器 元素 总结 Selenium是一款可以自动化操作浏览器的开源项目,最初的目的是浏览器功能的自动化测试,但是随着项目的发展,人们根据它的特性也用来做一些更多的有意思的功能而不仅仅是UI的自动化测试工具。

    2024年02月08日
    浏览(78)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包