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

news2024/10/6 5:59:12

说明

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

安装开发测试环境

1.运行环境
Python 3.8及以上
微信开发者工具 (本文档中简称IDE)最新版本,并打开安全模式
微信 >= 7.0.7
2.安装框架
pip3 install minium
验证环境安装成功
minitest -v
显示:{'version': '1.1.0', 'revision': '2fac2e36c281213874110f2088bc08c570bc1a2d', 'branch': 'master', 'update_at': '2021-08-05 21:17:09'}

安装微信开发者工具地址:https://developers.weixin.qq.com/miniprogram/dev/devtools/stable.html

这里不会安装直接问百度
最关键的一步为配置微信开发者的环境变量

3.开发环境配置

目录创建:: ## config.json

配置:

{
“dev_tool_path”: “*\cli.bat”, #开发者工具命令行工具路径
“project_path”: “”, # # 小程序项目路径
“platfrom”: “ide”, # 平台: ide, android, ios
“app”: “wx”,
“debug_mode”: “debug”, # 日志级别
“enable_app_log”: false, # 记录小程序日志
“close_ide”: false, # 是否关闭IDE
“full_reset”: false, # 每个测试class结束,是否释放调试链接
“test_port”: 9420, # 小程序自动化测试调试端口
“assert_capture”: true, # 断言时是否截图
“use_push”: true, # 真机调试中是否使用推送形式打开小程序, false则需要扫调试二维码
“auto_relaunch”: true, # case开始时是否回到主页
“remote_connect_timeout”: 10, # 真机调试中小程序在真机上打开的等待时间
“auto_authorize”: true, # 自动处理授权弹窗
“device_desire”: { # 真机调试配置
},
“account_info”: {}
}

用于跑测后自动生成报告配置: suite.json

{

“pkg_list”: [
{

  "case_list": [
    "test*"
  ],
  "pkg": "listCase.*test"
}

]

}

命令执行
os.system(“minitest -s suite.json -c config.json -g”)
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/66629.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Acrel-1200分布式光伏运维平台

行业现状 “十四五”期间,随着“双碳”目标提出及逐步落实,本就呈现出较好发展势头的分布式光伏发展有望大幅提速。就“十四五”光伏发展规划,国家发改委能源研究所可再生能源发展中心副主任陶冶表示,“双碳”目标意味着国家产业…

系列学习 SpringCloud-Alibaba 框架之第 4 篇 —— Sentinel 高可用流量控制组件

1、概念 Sentinel 是由阿里巴巴开发的开源项目,面向分布式微服务架构的轻量级高可用流量控制组件。以流量为切入点,从流量控制、熔断降级、系统负载保护等多个维度帮助用户保护服务的稳定性。可以说,Sentinel 就是取代 Hystrix 组件的。因为 …

H3C WX2510h无线控制器如何网关式部署无线网络

环境: H3C-WX2510H AC控制器 H3C Comware Software, Version 7.1.064, Release 5457 AP H3CWA6320-C 问题描述: H3C wx2510h无线控制器如何网关式部署无线网络 解决方案: 1.配置DHCP服务,开启vlan1为DHCP服务器 2.新建地址…

Spring-boot初级

一、springboot介绍 Spring Boot 是由 Pivotal 团队提供的基于 Spring 的全新框架,其设计目的是为了简化 Spring 应用的搭建和开发过程。该框架遵循『约定大于配置』原则,采用特定的方式进行配置,从而使开发者无需定义大量的 XML 配置。通过…

表、栈和队列及其C语言实现

1、抽样数据类型 程序设计的基本法则之一是例程不应该超过一页。这可以通过把程序分割为一些模块(module)来实现。每个模块是一个逻辑单元并执行某个特定的任务,它通过调用其他模块而本身保持很小。模块化有几个优点。首先,调试小程序比调试大程序容易得…

ALM研发管理中规则库的配置与使用

1.规则库简介 规则库就是描述某领域内知识的产生式规则的集合,而规则往往是由一个具体的业务逻辑具象而来,它通常是很具体的,有着明确的处理逻辑(即将输入数据经过一系列逻辑处理,输出处理后的结果)。 2.规…

从一个 issue 出发,带你玩图数据库 NebulaGraph 内核开发

如何 build NebulaGraph?如何为 NebulaGraph 内核做贡献?即便是新手也能快速上手,从本文作为切入点就够了。 NebulaGraph 的架构简介 为了方便对 NebulaGraph 尚未了解的读者也能快速直接从贡献代码为起点了解它,我把开发、贡献内…

synchronized详解

什么是线程安全问题? 简单来说就是当多个线程同时访问某个方法时,这个方法无法按照我们预期的行为来执行,那么我们认为这个方法是线程不安全的 导致线程不安全的主要原因 1.原子性 什么是原子性 比如在数据库事务的ACID特性中 当前操作中包含多个数据库事务操…

DolphinDB 诚挚招募实施伙伴

随着 DolphinDB 业务发展,为满足迅速增长的客户需求,我们现正式启动“实施伙伴招募计划”。DolphinDB 客户已经涵盖7家Top 10券商、头部公募及私募基金、知名银行、交易所、世界500强制造业客户、标杆能源企业等,我们非常期待和欢迎实施伙伴们…

毕业设计 基于stm32的智能平衡小车 - 单片机 物联网嵌入式

文章目录0 前言1 项目背景2 设计思路3 硬件设计4 软件设计4.1 核心PID控制4.2 直立控制程序设计4.3 速度控制程序设计4.4 方向控制程序设计4.5 关键代码5 最后0 前言 🔥 这两年开始毕业设计和毕业答辩的要求和难度不断提升,传统的毕设题目缺少创新和亮点…

32、Java高级特性——日期操作类、Date类、SimpleDateFormat类、Calendar类

目录 一、日期操作类 二、Date类 1、Date类中的构造方法 2、获取系统当前时间 三、SimpleDateFormat类 1、SimpleDateFormat类中的构造方法 2、format(Date date,StringBuffer toAppendTo,FieldPosition pos)方法 四、Calendar类 1、Calendar类中的构造方法 2、Cal…

[附源码]Python计算机毕业设计SSM家政信息管理平台(程序+LW)

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

Removing the Bias of Integral Pose Regression 阅读笔记

消除积分姿态回归的偏差 ICCV2021 论文链接 补充材料链接 参考链接 摘要: 尽管姿态估计的回归法更直观,但由于热图法的优越性能,使其在2D人体姿态估计中占主导地位。积分回归法在架构上使用隐式热图,拉近了热图法与回归法。这就…

GraalVM + Springboot3 + IDEA 在widow10 上完成构建本地化服务

GraalVM是开发人员编写和执行Java代码的工具。具体来说,GraalVM是由Oracle创建的Java虚拟机(JVM)和Java开发工具包(JDK)。它是一个高性能的运行时,可以提高应用程序的性能和效率。 GraalVM的目标包括&…

【数据结构】哈希表

目录 一、哈希函数的引入 二、解决哈希冲突的思路 2.1基于闭散列的思路 2.2基于开散列的思路 2.3负载因子 三、关于哈希函数的设计 四、基于拉链法实现哈希表 4.1哈希表的内部构造 4.2插入操作 4.3扩容操作 4.4搜索操作 4.5删除操作 哈希表其实就是基于数组衍生而来…

深度解读面试题:链表中环的入口结点(附代码,可过在线OJ)

在解读“链表中环的入口结点”前,我认为有必要明白关于它的一些用于打基础的问题(相交链表、判断链表中是否存在环) 相交链表 题目: 给你两个单链表的头节点 headA 和 headB ,请你找出并返回两个单链表相交的起始节点…

快收藏!!整理了100个Python小技巧!!

下面,我就给大家分享100个Python小技巧,帮助大家更好的了解和学习Python,欢迎收藏、关注,点赞支持! ▍1、for循环中的else条件 这是一个for-else方法,循环遍历列表时使用else语句。下面举个例子&#xff…

根据平均值列出记录

AANSI SQL包括几个聚合函数,使您可以对一组值进行计算以将其结果作为单个值返回。他们包括Count(), Min(), Max(), Sum() and AVG(),以及其他。默认情况下,聚合函数适用于所有行,但是您可以通过将WHERE子句应用于SELECT语句来缩小字段的范围。…

直冲云霄,阿里大牛耗时49天整理12W字面试手册,押题准确率直冲95%

很多人都想进字节做开发,不论是技术还是薪资、福利都算得上TOP级~ 7月底官方再次启动扩招,发布了1200+后端工程师岗位! 那么本批有哪些优质岗位可选择?薪资待遇如何? 下面给大家列出几类具体的岗位要求&a…

软件项目管理指南:定义、5大过程、估算及进度管理方法等

本文将分享:1、软件项目管理的定义;2、软件项目管理的过程步骤;3、软件项目管理的内容;4、软件项目估算与进度管理方法;5、软件开发各生命周期阶段与文档、角色间的关系;6、软件开发项目中的各大角色职能&a…