airtest学习笔记
1、前言
airtest官网:Airtest Project
视频讲解:【网易Airtest第7课】如何编写并运行你的第一个Airtest脚本_哔哩哔哩_bilibili
2、Android自动化小妙招
1)如果机器锁屏,唤醒机器
poco.device.wake()
2)启动APP
常用的启用APP方式
方式一:指定名称
poco("日历").click()
方式二:指定图片
touch(Template(r"tpl123456.png", record_pos=(0.359, 0.969), resolution=(1080, 2244)))
方式三:使用airtest自带函数:start_app("app包名")/stop_app(appName)
# 打开网易云音乐
start_app("com.netease.cloudmusic")
3)判断元素是否存在
if poco("name").exists():poco("name").set_text(serId)
else: poco("choose_server").click()poco("edit_name").set_text(serId)
3、iOS自动化小妙招
1)机器连接
tidevice脱离mac搞iOS自动化
脱离Mac搞iOS自动化,tidevice工具教你轻松实现!
iOS真机安装WebDriverAgent
iOS真机安装WebDriverAgent图文详解_坚韧顽强的搬砖小伙的博客-CSDN博客_ios安装webdriveragent
2)脚本编写
文本输入:选中文本输入框click()后,text("文本内容")
#先点击输入框,再输入内容
poco("SecureTextField").click()
text("autotest1")
4、Jenkins持续集成
在启动时希望自定义参数:
1)自定义python文件
from airtest.cli.runner import AirtestCase, run_script
from airtest.cli.parser import runner_parser
class CustomAirtestCase(AirtestCase):def setUp(self):# 在air脚本运行之前获取这个自定义的参数if self.args.serverIdCur:self.scope['serverIdCur']=self.args.serverIdCurif self.args.appNameCur:self.scope['appNameCur'] = self.args.appNameCurif __name__ == '__main__':ap = runner_parser()# 添加自定义的命令行参数ap.add_argument('-r', "--serverIdCur", help="请输入服务器ID")ap.add_argument('-app', "--appNameCur", help="请输入APP名")args = ap.parse_args()run_script(args, CustomAirtestCase)
2)在.air文件中接收变量
serverId = serverIdCur
appName = appNameCur
3)Jenkins流水线命令
node {
stage('UI测试') {try {sh "python start.py All.air --device Android:///12345 --log ./log --serverIdCur $serverId --appNameCur $appName" } catch (err) {echo "Caught: ${err}"}
}stage('上传结果') {sh "airtest report ./All.air --log_root ./log --export ./HTML"archiveArtifacts artifacts: 'HTML/**/*', followSymlinks: false
}
}
airtest学习笔记相关推荐
- Airtest学习(四)
学习笔记-airtest自动化 笔记目录:https://blog.csdn.net/weixin_42717928/article/details/114343085 昨天下了雨,今天刮了风,明天太 ...
- PyTorch 学习笔记(六):PyTorch hook 和关于 PyTorch backward 过程的理解 call
您的位置 首页 PyTorch 学习笔记系列 PyTorch 学习笔记(六):PyTorch hook 和关于 PyTorch backward 过程的理解 发布: 2017年8月4日 7,195阅读 ...
- 容器云原生DevOps学习笔记——第三期:从零搭建CI/CD系统标准化交付流程
暑期实习期间,所在的技术中台-效能研发团队规划设计并结合公司开源协同实现符合DevOps理念的研发工具平台,实现研发过程自动化.标准化: 实习期间对DevOps的理解一直懵懵懂懂,最近观看了阿里专家带 ...
- 容器云原生DevOps学习笔记——第二期:如何快速高质量的应用容器化迁移
暑期实习期间,所在的技术中台-效能研发团队规划设计并结合公司开源协同实现符合DevOps理念的研发工具平台,实现研发过程自动化.标准化: 实习期间对DevOps的理解一直懵懵懂懂,最近观看了阿里专家带 ...
- 2020年Yann Lecun深度学习笔记(下)
2020年Yann Lecun深度学习笔记(下)
- 2020年Yann Lecun深度学习笔记(上)
2020年Yann Lecun深度学习笔记(上)
- 知识图谱学习笔记(1)
知识图谱学习笔记第一部分,包含RDF介绍,以及Jena RDF API使用 知识图谱的基石:RDF RDF(Resource Description Framework),即资源描述框架,其本质是一个 ...
- 计算机基础知识第十讲,计算机文化基础(第十讲)学习笔记
计算机文化基础(第十讲)学习笔记 采样和量化PictureElement Pixel(像素)(链接: 采样的实质就是要用多少点(这个点我们叫像素)来描述一张图像,比如,一幅420x570的图像,就表示 ...
- Go 学习推荐 —(Go by example 中文版、Go 构建 Web 应用、Go 学习笔记、Golang常见错误、Go 语言四十二章经、Go 语言高级编程)
Go by example 中文版 Go 构建 Web 应用 Go 学习笔记:无痕 Go 标准库中文文档 Golang开发新手常犯的50个错误 50 Shades of Go: Traps, Gotc ...
最新文章
- 简述configure、pkg-config、pkg_config_path三者的关系
- 图像边缘检测技术与理论发展脉络梳理大放送
- QML中的定位器和布局
- 小腿训练三部曲(二)
- figma下载_Figma的自动版式实用
- 学习手记(2020/8/19~2021/3/19)
- java输入正确的信息_判断用户输入的信息是否正确
- pycharm python 模板配置_pycharm设置python脚本模板
- python 执行shell_python执行shell命令的方法
- skipfish 主动扫描web安全评估工具
- python-函数-默认值传参
- Python: 装饰器的小例子
- IT永远也不可能做到整体外包,这句话是我说的。。。
- 转行学AI,如何选择适合的方向
- PostgreSQL中UUID的完整指南
- GridView冻结列的实现
- PTA 数据结构题集
- 微信开发者工具的使用和各个文件的作用
- 无线网和网吧服务器,网吧也无线?网吧无线网解决方案
- 自动定量包装机机械及控制系统设计(PLC控制)
热门文章
- IOTServiceSetup工具下载安装
- Excel上传到服务器,并下载返回
- 没有经过微软认证的驱动怎么安装?
- 剑与轮回辅助升级脚本工具 职业选择推荐
- Liunx 虚拟机Ubuntu更换内核版本以及更换内核后,碰到Memtest86
- d610网络计算机,智享手机电脑双模数据传输:CamFi 卡菲全能版 WIFI 传输器
- Linux fciv 生成md5,cmd下md5值计算命令
- shopex各文件路径
- Qt QWindowsBackingStore::flush: GetDC failed (句柄无效)
- 基于Ziegler-Nlichols方法的参数整定与PID仿真