Airtest

个人总结

那年仲夏 提交于 2020-08-11 14:33:15
做了哪些作业 个人作业 第一次博客作业 第一次个人编程作业 第二次个人编程作业 第一次结对作业 第二次结对作业 第三次个人作业——用例图设计 团队作业 Happy Tree Friends——团队展示 项目介绍 团队作业——UML设计 第三次团队作业(需求分析) 团队Github实战训练 团队作业第四次—项目系统设计与数据库设计 团队作业第五次——Alpha冲刺 Alpha冲刺——总结 团队作业第六次——Beta冲刺 在这由于疫情“闭关”的几个月的时间里我们从零开始体验软件工程这门课的魅力,老师一开始布置的的汉字编程很有趣,大家用各种各样的语言来编写使汉字字符串能运行起来,虽然和课程内容无关但是激起了我的兴趣。老师没有明说但是他对这门课程的还是很明显的,布置的任务逐步从单人—>双人—>八人,可能是由于现在基本上开发一个软件的都是一个团队的原因,各司其职的效率比较高。 这门课程的实践给你带来的提升 在这段时间里由于开发需要我学会使用了Photoshop、Android Studio、Airtest、墨客这些软件,尽管我主要是负责界面美化的工作,但我认为编程方面的东西还是要去学一些的,特别是Git这个工具,在开发时是非常重要的工具,虽然Android Studio中有内置简易的各种图形化Git操作,但是我们还是去学习了如何使用Git Bash来进行一系列的协同编程命令

airtest IDE 编写 明日方舟 刷钱脚本

霸气de小男生 提交于 2020-07-28 10:28:10
下载 http://airtest.netease.com/ 官方文档 http://airtest.netease.com/docs/docs_AirtestIDE-zh_CN/index.html 之前在mi9上是直接使用py写的, 后面被我摔坏后换了mi10 pro, 结果截图时 用get_frame_from_stream 总报错 万般无奈找了很多办法都没发成功截屏, 包括关闭miui优化等, 于是下载ide版本的试试 首先连接设备时需要选中三个 , 否则也没办法显示屏幕信息, 会安装几个apk应用, 应该是使用这种方式完成的截屏, 所以之前直接用adb的就失效了 不过这种截屏不知道能不能调整分辨率, mi10 pro的分辨率有点高, 做图像识别的时候明显有点耗时, 而且也没有必要用这么高的 使用opencv 展示屏幕内容, 把截图的文件保存到指定位置, 然后使用cv读取并展示, 这个效率很一般, 毕竟io太多了 # -*- encoding=utf8 -*- __author__ = "Ace" from airtest.core.api import * from airtest.core.android.minicap import * import cv2 as cv auto_setup(__file__) tmpPath = "d:/data/t.jpg"

airtest Firebase打包坑点

点点圈 提交于 2020-07-27 09:33:58
使用airtest一段时间了,仅限使用,没有深究,今天想要尝试下air的脚本打包功能,因为是在尝试,所以代码很简单只有一句,启动被测apk 打包方式也很简单,只要自己本地环境搭配好就没问题 因为打包需要使用到使用的jdk的jarsigner模块,因此在使用AirtestIDE的Firebase打包功能,需要配置java(jdk,非jre)环境(需重签APK包): 1、 下载jdk 安装完jdk后,需要配置环境变量: 2、 jdk环境变量配置 打包流程很简单: 直接安装打好的apk,直到这一步也不复杂,但是我这时候采坑了,装好的apk我去点击,却没有相应的反应,这就尴尬了,结果是在官网看到........ 将打包成功的测试脚本apk,与被测应用同时安装到手机上 然后用adb指令启动测试脚本 adb shell am instrument -w com.netease.open.airbase/android.support.test.runner.AndroidJUnitRunner 可是我没用过这样的adb 命令,所以在查了资料后 找到详细介绍 adb shell am instrument -w 的资料,在这里引用一下,多谢作者 必须说明,现在我也仅限于会用....... 来源: oschina 链接: https://my.oschina.net/u/4290163/blog

Airtest操作多台云手机,进行分发,多个脚本后端调度

我是研究僧i 提交于 2020-05-04 18:46:39
一.核心重点 使用python后端框架:tornado 调度:redis队列 存手机的class_name采取头取尾曾 多台手机连接方式 connect_device(f"Android:///{class_name}") #class_name也就是云手机ip+端口,或者说本地手机连接的名称,你可以用adb devices看名字 set_current(class_name) dev = device() poco = AndroidUiautomationPoco(device=dev,use_airtest_input=True, screenshot_each_action=False) #用这种连接调度是为了防止操作串了 二.互动操作思路 1.前端向后端接口发起请求 2.后端接受请求,更加参数成功一个bat脚本,并用os命令执行他,利用redis中blpop或者brpop方法进行阻塞 #bat脚本模板 @echo off start cmd /c "python airtest脚本路径 参数1 参数2 ......." #其中参数组一般都有class_name进行选择 #cmd/c结束后关闭cmd,cmd/K不关闭 #要点在window环境下创建bat脚本用系统的编码格式,国内一般是'gbk' #如果是linux上操作,就不创建bat脚本了shell脚本

Airtest常见的元素定位不到

心不动则不痛 提交于 2020-05-04 18:46:17
一.为什么发这博客 前几天业务需要需要操作云手机进行爬取没办法只有混进airtest官方群边学习边进行开发,蛮简单的东西(可能是我之前会selenium,appuim关系吧),但是群里会有很多问题,关于匹配元素其实很简单..... 我就把我使用经验总结一下 二.单个和多个 '你一定要把它当做一个网页' 匹配一个 poco('xx') 匹配多个 list(pcoc('xx')) #加个ls你可以看的更加清晰加了后也可以用 #for循环也好,切片工具也好你都可以选择 #其实就这么简单 三.元素的后续节点选择 当使用一个元素的属性没法精准匹配到该元素的时候的使用 poco('条件1').下面介绍的方法(条件2) child 获取当前节点下的子节点,如果是多个获取多个,没有转换list或者不用for循环提取默认提取第一个节点 children 获取子节点,如果是多个获取多个,没有转换list或者不用for循环提取默认提取第一个节点 #那他和child有什么区别呢,只能说用起来有区别child可以选择指定的子节点,而children没法指定 offspring 获取当前节点下的孙节点,如果是多个获取多个,没有转换list或者不用for循环提取默认提取第一个节点 sibling 获取当前节点的兄弟节点 parent 获取当前节点的父节点 元素文本正则匹配 poco(textMatches=

【android】Airtest IDE实现多设备管理以及自动装包

倾然丶 夕夏残阳落幕 提交于 2020-04-28 06:30:35
Airtest IDE简介   首先,感谢网易团队的各位大大开发并开源了Airtest这个自动化测试工具,Airtest是一款基于图像识别和poco控件识别的UI自动化测试工具。它适用于任意引擎和应用的自动化测试,支持Android、Windows和Ios。 安装Airtest IDE   从Airtest官网: https://airtest.netease.com 下载Airtest后,像安装普通软件一样安装即可。安装过程没有什么需要特别说明的地方,Airtest已经帮你打包好了使用需要的全部环境,所以安装完成Airtest以后就可以直接使用了。 安装好后运行界面如下: 更多的使用教程和功能可以查阅官方文档: https://airtest.readthedocs.io/zh_CN/latest/README_MORE.html Airtest IDE 实现多设备管理以及自动装包   简单介绍一下安装,现在回到标题,在测试工作中,有可能会遇到一次需要给好几个设备安装包的时候,针对这种情况,我们可以利用Airtest帮助我们实现,让我们的测试工作更方便快捷。 代码如下: 1 # -*- encoding=utf8 -*- 2 __author__ = " starkYang " 3 4 from airtest.core.api import * 5 from airtest

使用AirtestIDE进行小程序自动化测试

泄露秘密 提交于 2020-04-24 15:36:36
Airtest是网易出的基于图像识别和Poco控件识别的最近非常火的一个ui自动化测试工具,由网易游戏内部工具团队开发并开源,获得谷歌力挺。也是是一个跨平台、多端(Windows、web、android、ios、游戏)的UI自动化测试编辑 器。自动化脚本录制、一键回放、报告查看,轻而易举实现自动化测试流程,自有编辑器一站式解决。具体大家可以登录官网了解一下 http://airtest.netease.com 。 下面向大家演示如何使用AirtestIDE编写一个爱标客小程序自动化测试脚本。 1.安装AirTest IDE 官网下载: http://airtest.netease.com/ 解压即用。 2 . 连接手机 下载好之后打开AirtestIDE并连接手机。 如何连接手机可以参考官方文档 http://airtest.netease.com/docs/cn/2_device_connection/1_android_phone_connection.html 手机连接成功后,即可在AirtestIDE中看到手机屏幕的镜像显示,并进行实时操作。 连接好手机这时显示如下页面: 3 .录制脚本 用例:点击微信进入首页,下拉选择爱标客体验版小程序,进入小程序后搜索任务名含“011”的任务,点击该任务进入任务详情页,若提示登录,输入账号密码登录小程序。

小程序UI自动化(二):airtest小程序自动化

狂风中的少年 提交于 2020-04-24 14:15:33
airtest是什么 Airtest是网易出品的一款基于图像识别和poco控件识别的一款UI自动化测试工具。 airtest官网介绍如下:   AirtestIDE 是一个跨平台的UI自动化测试编辑器,适用于游戏和App。 自动化脚本录制、一键回放、报告查看,轻而易举实现自动化测试流程 支持基于图像识别的 Airtest 框架,适用于所有Android和Windows游戏 支持基于UI控件搜索的 Poco 框架,适用于Unity3d,Cocos2d与Android App 能够运行在Windows和MacOS上 网易内部已成功应用在数十个项目上,利用 手机集群 进行大规模自动化测试 airtest支持语言: 从上图官网介绍可知,airtest仅支持python语言 airtest环境配置 airtest安装教程官网介绍的很详细, 官网地址: http://airtest.netease.com/tutorial/Tutorial.html 按照官网安装介绍下载解压即可: 3,连接设备(android为例) (1)打开手机 设置-开发者选项-USB调试 开关 (2)用usb线连接手机和电脑 (3)在AirtestIDE设备面板中点击 "刷新 ADB "按钮,查看连接上的设备 (4)点击对应设备的 Connect 按钮,进行初始化 airtest小程序自动化脚本编写(以美团小程序为例)

小程序UI自动化(一):appium小程序自动化尝试

两盒软妹~` 提交于 2020-04-24 09:27:41
appium 进行 小程序自动化尝试: 由于工作中进行app自动化用的是appium,故首先尝试用appium进行小程序自动化,以美团小程序为例(python脚本实现) 一、配置基础信息 启动微信app python脚本如下: 二、编写测试脚本进入小程序首页 进入美团小程序首页实现脚本如下: 三、定位美团外卖首页元素(尝试结果不理想) (1)尝试用android adk 自带UI Automator定位工具定位 在UI Automator上,点击页面元素,可以发现,小程序页所有文本元素属性class都是android.view.View,图片的class属性都是android.widget.Image,且无id等常用属性值,仅可以通过text,坐标来定位元素唯一性。 (2)获取页面上下文,看是否可以切换至小程序页(无法切换) 尝试打印美团首页 context ,脚本如下: 打印结果: 从结果中可以看到,context只有一个,无法切换至小程序页 总结 小程序view页定位到的元素,如下图: 从上图中可以看出,小程序页所有文本元素属性class都是android.view.View,图片的class属性都是android.widget.Image,且无id等常用属性值,仅可以通过text,坐标来定位元素唯一性。此时可以定位到元素,但是无法区分元素进行断言校验。 四

如何在iOS手机上进行自动化测试

不打扰是莪最后的温柔 提交于 2020-04-18 05:52:31
版权声明:允许转载,但转载必须保留原链接;请勿用作商业或者非法用途 Airtest支持iOS自动化测试,在Mac上为iOS手机部署iOS-Tagent之后,就可以使用AirtestIDE连接设备,像连接安卓设备一样,实时投影、控制手机。iOS测试不仅限于真机测试,iOS模拟器也可以进行。Mac端上部署完成后还可以提供给同一局域网内的windows上远程连接使用。同时支持airtest图像识别和poco UI检索。 本文介绍iOS自动化测试的部署过程,提供一个简单的测试脚本,列举了iOS测试过程中常见的问题。 功能支持 支持AirtestIDE连接,实时控制 iPhone 支持基本操作如启动app、点击、滑动、输入、截图等等操作 支持控件检索技术Poco和图像识别 自动化脚本录制、一键回放、报告查看等基本功能 支持真机或者模拟器 安装部署 版本需求: Mac Xcode ≥ 9.3 iPhone iOS ≥ 9.3 在 9.3≤iOS≤10时,由于基于旧版xcode SDK,建议使用Xcode 版本≤10.1来启动iOS-Tagent,否则会出现手机截屏不全的问题。 部署流程 在Mac下载 iOS-Tagent ,使用 Xcode 启动 Test , 具体启动过程可参考 https://github.com/AirtestProject/iOS-Tagent