综合跨平台全端ui自动化测试框架Airtest——AirtestIDE录制微信小程序脚本教学
前言
有在自动化测试领域的小伙伴应该都知道,app和小程序自动化这一类的自动化测试在实际操作中有时候很棘手让人心烦,动不动就是用appium写代码脚本维护什么的,不仅步骤繁琐,环境配置方面也是繁琐无比,动不动就与客户端交互出现障碍到运行不了页面,考验各位测试工程师的耐心,谁不想更高效率完成自动化测试工作同时又一身轻松呢。下面Darren洋给大家介绍一款综合型跨平台全端ui自动化测试框架实战选手——AirtestIDE
,AirtestIDE
是一个跨平台的UI自动化测试编辑器,适用于游戏和App及微信小程序等。AirtestIDE目前支持测试Android
/Windows
/iOS
上的应用。无论是Android
/iOS
手机,还是Windows
窗口,在Airtest
中都将它视为一个设备。
本篇Darren洋博客文章以录制微信小程序脚本为例进行教学,授之以渔,各位想更深入了解该款工具可直接前往AirtestIDE官网文档进行学习开拓
。传送带:欢迎使用 - Airtest Project Docs
AirtestIDE官网文档特性:
- 自动化脚本录制、一键回放、报告查看,轻而易举实现自动化测试流程
- 支持基于图像识别的Airtest框架,适用于所有Android/iOS/Windows应用
- 支持基于UI控件搜索的Poco框架,适用于Unity3d,Cocos2d与Android/iOS App等多种平台
- 能够运行在Windows、MacOS、Linux平台上
一、下载AirtestIDE
Airtest ProjectAirtestIDE官网下载传送带:Airtest Project
解压后直接点击AirtestIDE.exe程序运行AirtestIDE。
首页直接点击跳过登录。
二、模拟器打开调试
模拟器调试这一步中的模拟器大家可以任意选择市场上的模拟器(这里特指安卓模拟器),像什么雷电模拟器,夜神模拟器都可,不知道怎么安装的,可参考Darren洋之前发布的博客文章进行安装。当然,这里你想用真机也行,直接插上连接打开开发者模式中的调试就行。
博客文章传送带:https://cfycsdnbk.blog.csdn.net/article/details/130382233?ydreferer=aHR0cHM6Ly9tcC5jc2RuLm5ldC9tcF9ibG9nL21hbmFnZS9hcnRpY2xlP3NwbT0xMDExLjIxMjQuMzAwMS41Mjk4
在设置中打开调试。
三、设备面板连接模拟器
打开调试后,直接在AirtestIDE设备面板中点击刷新ADB
按钮,即可查看连接上的设备。
点击对应设备的连接
按钮,进行初始化。
连接成功后,即可在AirtestIDE中看到模拟器屏幕的镜像显示,并对画面进行实时操作。
四、录制自动化脚本
点击AirtestIDE左侧的Airtest辅助窗上的录制
按钮。
这里随便以一个微信小程序为例,点击上方录屏按钮后,直接在AirtestIDE中的设备窗中进行操作,代码会自动生成在代码窗口中,停止录制后,点击运行回放脚本,就可以自动进行回归测试啦!!!
更多用法请自行查看官网文档:一、5分钟上手自动化测试——Airtest+Poco快速上手 - Airtest Project Docs
五、查看测试报告
点击查看报告
按钮(快捷键Ctrl+L),会使用默认浏览器打开结果报告页面。
报告中将展示出每一个步骤的内容和实际执行过程的截图、运行结果。
相关文章:
综合跨平台全端ui自动化测试框架Airtest——AirtestIDE录制微信小程序脚本教学
前言 有在自动化测试领域的小伙伴应该都知道,app和小程序自动化这一类的自动化测试在实际操作中有时候很棘手让人心烦,动不动就是用appium写代码脚本维护什么的,不仅步骤繁琐,环境配置方面也是繁琐无比,动不动就与客户…...
如何在ArcGIS Pro中指定坐标系
在进行制图的时候,为了实现某些特定的效果,需要指定特定的坐标系,但是现有的数据可能不是所需要的坐标系,这时候就需要对现有的数据坐标系进行处理,这里为大家介绍一下ArcGIS Pro中指定坐标系的方法,希望能…...
macOS 老版本系统恢复中出现“MacBook Pro无法与恢复服务器取得联系”
macOS 老版本系统恢复中出现“MacBook Pro无法与恢复服务器取得联系” 网络问题系统时间问题镜像索引问题 网络问题 系统时间问题 镜像索引问题 恢复模式的 “实用工具 > 系统终端” 里执行如下 nvram IASUCatalogURLhttps://swscan.apple.com/content/catalogs/others/i…...
[C#]使用OpenCvSharp实现二维码图像增强超分辨率
【官方框架地址】 github.com/shimat/opencvsharp 【算法介绍】 借助于opencv自带sr.prototxt和sr.caffemodel实现对二维码图像增强 【效果展示】 【实现部分代码】 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin…...
优化|流形优化系列(一)
简介 流形优化是非线性优化的一个分支,它主要关注在特定的几何结构下进行优化。在流形优化中,优化问题通常是在黎曼流形上进行的,而非欧几里得空间。黎曼流形是带有黎曼度量的流形,该度量为流形上的每个点都定义了一个内积。这种…...
torch.where()函数
在深度学习的实现中,处理条件逻辑是一项常见而重要的任务。PyTorch 提供了一个强大的函数 torch.where(),它使得基于条件的张量操作变得既简单又高效。本文将深入探讨 torch.where() 的用法,并通过示例展示它在不同场景中的应用。 什么是 to…...
盖子的c++小课堂——第二十三讲:背包问题
前言 又是一次漫长的更新(我真不是故意的aaaaaaaaaaaaaaa),先不多说了,直接给我~坐下~说错了说错了,直接开始~ 背包问题----动态规划 背包问题(knapsack problem) 动态规划(dyna…...
k8s安装hostPath方式存储的PostgreSQL15
1.配置 PostgreSQL 的 ConfigMap cat > postgres-configmap.yaml << EOF apiVersion: v1 kind: ConfigMap metadata:name: postgres-configlabels:app: postgresnamespace: dev data:POSTGRES_DB: postgresdbPOSTGRES_USER: postgresadminPOSTGRES_PASSWORD: admin12…...
51单片机之按键和数码管
51单片机之按键和数码管 ✍前言:♐独立按键😀独立按键的原理😀软件实现按键控制LED灯的亮灭 ♐数码管😊数码管显示数字或者字母的原理🐉共阳极数码管🐉共阴极极数码管🐉4位1体数码管 Ƕ…...
【Oracle】 - 数据库的实例、表空间、用户、表之间关系
Oracle是一种广泛使用的关系型数据库管理系统,它具有高性能、高可靠性、高安全性等特点。1Oracle数据库的结构和组成是一个复杂而又有趣的话题,本文将介绍Oracle数据库的四个基本概念:数据库、实例、表空间和用户,以及它们之间的关…...
ssm基于HTML5的交流论坛的设计与实现+vue论文
摘 要 信息数据从传统到当代,是一直在变革当中,突如其来的互联网让传统的信息管理看到了革命性的曙光,因为传统信息管理从时效性,还是安全性,还是可操作性等各个方面来讲,遇到了互联网时代才发现能补上自古…...
JDBC*
*JDBC数据库连接步骤 1.将JDBC驱动的jar添加到项目的依赖中。 2.加载JDBC驱动 例如: Class.forName("com.mysql.jdbc.Driver"); 3.连接数据库 例如: Connection con DriverManager.getConnection(URL,us…...
Zookeeper注册中心实战
Java学习手册面试指南:https://javaxiaobear.cn Spring Cloud Zookeeper通过自动配置和绑定到 Spring 环境和其他 Spring 编程模型习惯用法,为 Spring Boot 应用程序提供Apache Zookeeper集成。通过一些简单的注释,您可以快速启用和配置应用…...
1-02VS的安装与测试
一、概述 对于一名C语言程序员而言,进行C语言程序的开发一般需要一个文本编辑器加上一个编译器就足够了。但为了方便起见,我们选择使用集成开发环境——Visual Studio(简称VS)。安装Visual Studio 下面讲一下如何安装VS࿰…...
ctfshow——PHP特性
文章目录 web 89web 90web 91web 92web 93web 94web 95web 96web 97web 98web 99web 100——优先级、eval()用法web 101——RefelctionClass反射类web 102——php伪协议、hex2bin()web103web 104——sha1绕过web 105 web 89 使用人工分配 ID 键的数值型数组绕过preg_match. 两个…...
K8S陈述式资源管理
陈述式 命令行:kubectl命令行工具 优点:90%以上的场景都可以满足,对增,删,查比较方便,对改不是很友好 缺点:命令比较冗长,复杂,难记 声明式 k8s当中的yaml文件来实现资…...
详解Python内置函数 !!!
内置函数就是Python给你提供的, 拿来直接用的函数,比如print,input等。 文章目录 前言 一、和数字相关 1. 数据类型 2. 进制转换 3. 数学运算 二、和数据结构相关 1. 序列 2. 数据集合 3. 相关内置函数 三、和数据结构相关 四、和迭代器生成器相关 五、字…...
使用Vue3 + Vite创建uni-app项目(Webstorm)
使用Vue3 Vite创建uni-app项目(Webstorm) 参考:前端VUE3Vite UniAPP-- 框架搭建_uniapp vite-CSDN博客 // 参考github.com的库:https://github.com/dcloudio/uni-preset-vue npx degit dcloudio/uni-preset-vue#vite-ts vite-vu…...
【js】js实现多个视频连续播放:
文章目录 一、效果:二、实现:三、案例: 一、效果: 二、实现: <!DOCTYPE html> <html> <head><title>Video Player</title><style>#progressBar { width: 800px;height: 20px;b…...
使用openssl 生成pfx格式证书时报错:unable to load certificates
问题现象包如下: 之前在centos上使用openssl部署证书服务器以及颁发证书的时候遇到的问题,在进行个人证书生成之后需要形成pfx格式证书,结果过程中报错了。网上类似资料比较少,做个记录。 生成pfx格式证书的命令: o…...
微信小程序 分享按钮 监听用户分享成功
代码 <view><button class"btnLq ed flex justify-center" open-type"share" click"getAward">点击分享</button> </view>export default {data(){return{shareMd:false,//分享埋点}},onShow(){//if(this.shareMd){uni.…...
数据结构-怀化学院期末题
题目: 利用希尔排序算法实现线性表的排序。希尔排序是根据给定的增量序列将线性表分隔成某个“增量”的记录组成一个子序例,在子序列中采用直接插入排序完成。 输入 第一行为元素个数n(1<n<1000),第二行为n个元素值(整数),即…...
跟cherno手搓游戏引擎【1】:配置与入口点
环境配置: 编译环境:VS2019 创建两个项目: 设置Sandbox为启动项: 设置sandbox的配置属性-常规-输出目录\中间目录为如下: 预处理定义:为了配置一些只有windows才能用的函数。 设置YOTOEngin(我…...
25计算机专业考研经验贴之准备篇
Hello各位小伙伴,大家新年好! 马上就要进入寒假假期了,25考研也该提上日程了。今天先跟大家分享一下大家在假期可以先做起来的准备工作。 【选择学校】 择校是个非常重要的内容,因为不同学校的考试内容是不一样的,有些…...
机器人相关知识
机器人学(Robotics) 一些基础概念 位姿 位姿位置姿态 位姿的表示 刚体 刚性物体是一组粒子的集合,其中任意两个粒子之间的距离保持固定,不受物体运动或施加在物体上的力的影响。 “完全不可变形”的物体就是刚体。 刚体位置 刚性连杆 …...
八股文打卡day22——操作系统(5)
面试题:什么是死锁?如何避免死锁? 我的回答: 死锁是两个或者多个进程都占有各自的资源,然后都互相请求资源,导致互相都陷入了阻塞状态。 如何避免死锁呢? 首先,造成死锁有四个必要…...
SQL Server 权限管理
CSDN 成就一亿技术人! 2024年 第一篇 难度指数:* * CSDN 成就一亿技术人! 目录 1. 权限管理 什么是权限管理? SQL server的安全机制 服务器级角色 数据库级角色 对象级角色 2. 创建用户 赋予权限 最重要的一步骤 1. 权限…...
ReentrantLock底层原理学习一
J.U.C 简介 Java.util.concurrent 是在并发编程中比较常用的工具类,里面包含很多用来在并发场景中使用的组件。比如线程池、阻塞队列、计时器、同步器、并发集合等等。并发包的作者是大名鼎鼎的 Doug Lea。我们在接下来的课程中,回去剖析一些经典的比较…...
数字孪生在增强现实(AR)中的应用
数字孪生在增强现实(Augmented Reality,AR)中的应用可以提供更丰富、交互性更强的现实世界增强体验。以下是数字孪生在AR中的一些应用,希望对大家有所帮助。北京木奇移动技术有限公司,专业的软件外包开发公司ÿ…...
【数据仓库与联机分析处理】多维数据模型
目录 一、数据立方体 二、数据模型 (一)星形模型 (二)雪花模式 (三)事实星座模式 三、多维数据模型中的OLAP操作 (一)下钻 (二)上卷 (三…...
网站建设 合优网络/广州百度竞价开户
笔记本(ThinkPad E550c)怎样关闭触摸板 ps:打字时老是容易碰着触摸板 首先,下载鲁大师,目的是利用鲁大师的 驱动管理 功能查看并安装或者升级触摸板驱动,别的软件都不好使。 然后 控制面板-》在控制面板中点击硬件和声音选项-》找到设备和打…...
建设网站南沙区/北京最新疫情
一 eval函数问题JavaScript中的eval函数是颇受开发者争议的问题之一,问题主要在于其可能导致的不安全性。有关此方面问题,在此不再赘述,读者可能很容易地浏览到许多介绍性文章。但是,eval函数的优点也是很明显的。例如࿰…...
如何做公司自己的网站首页/百度助手下载安装
2019独角兽企业重金招聘Python工程师标准>>> 最近有一个微信端要上,需要凌晨12点上线,不可能让我等到12点切流量吧,于是早早的配置好,回家睡觉 很简单,主要在nginx这层做点处理,就行了ÿ…...
怎么登录wordpress/郑州专业网站建设公司
惰性实例化要解决的问题是:避免了在页面中 JavaScript 初始化执行的时候就实例化类,如果在页面中没有使用这个实例化的对象,就会造成一定的内存浪费和性能消耗。如果将一些类的实例化推迟到需要使用它的时候才去做,就可以避免资源…...
怎么做网站不会被屏蔽/google广告投放
PP-OCR: A Practical Ultra Lightweight OCR System 论文地址:https://arxiv.org/abs/2009.09941 代码地址:https://github.com/PaddlePaddle/PaddleOCR 一、简介 PP-OCR是一个实用的超轻量中英文OCR系统,是针对中英文OCR问题,对…...
河南网站建设/怎样在百度上宣传自己的产品
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid2845 思路:对于一行来说,相邻的数不可同时取,容易得到状态转移方程:sum[i] max (sum[i-2]sum[i], sum[i-1]),其中sum[i]表示一行前i个数时的最大和&a…...