APP自动化测试框架搭建(七)--Airtest基础操作

本文详细介绍了Airtest在Mac和Windows环境下的安装与使用,包括通过AirtestIDE生成和运行脚本,以及在Pycharm中设置虚拟环境执行脚本的步骤。同时,讲解了关键API的使用,如元素定位、触摸、滑动、断言等,为APP自动化测试提供基础指导。
摘要由CSDN通过智能技术生成

第一章 APP自动化环境搭建(Mac版)
第二章 APP自动化环境搭建(Windows版)
第三章 adb命令
第四章 元素定位、元素操作
第五章 APP自动化测试框架搭建 Python+Appium+pytest-html
第六章 uiautomator2、web-editor基础操作
第七章 Airtest基础操作
第八章 ATX Server2多设备集群环境搭建



一、Airtest安装

1、下载

官网下载地址:https://airtest.netease.com/changelog.html,根据自己系统对应下载即可。
在这里插入图片描述

2、安装

Windows解压之后在解压包内找到AirtestIDE.exe⽂件,打开AirtestIDE;
Mac则傻⽠式安装,注意需要权限给予;
在这里插入图片描述

3、启动

双击AirtestIDE打开,会弹出登录界面,直接点击右下角skip跳过即可。连上后点击刷新ADB,右侧即可看见设备,点击connet就能同步设备界面。手机上弹出安装Yosemite记得点击同意安装。
在这里插入图片描述
在这里插入图片描述

二、Airtest的使用方式

1、使用airtestIDE直接生成脚本并直接运行

①左上角点击+号,选择.air Airtest项目
在这里插入图片描述
②APP自动化进需要使用Airtest辅助窗,可以点开窗口,去掉Poco Assistant 和 Selenium Window 勾选。
在这里插入图片描述
点击左侧touch后,Log查看窗提示下一步如何操作,在屏幕范围内框选出你要操作的APP,双击鼠标在这里插入图片描述
双击后可以看见脚本编辑窗多了touch及框选出的区域。运行脚本点击上方三角执行按钮即可。
也可以将想要执行的代码选中,右键只运行选中代码。
在这里插入图片描述
其他操作:

名称操作
wait等待
swipe滑动
exists存在判断
text输⼊内容
keyevent键位操作
snapshost截图
sleep进程休眠
assert_exists判断是否存在
assert_not_exists判断是否不存在
assert_equal判断是否相等
assert_not_equal判断是否不相等

2、使用airtestIDE生成脚本,使用脚本运行

前提内容:

start_app() # 这个是⼀种打开指定APP的⼀种⽅式;括号内使⽤的是包名;
stop_app() # 这个是⼀种退出指定APP的⼀种⽅式;括号内使⽤的是包名;

#⽐如:
app = "com.baidu.searchbox"
start_app(app)
stop_app(app)

使用airtestIDE⽣成一个简单的脚本:
进入百度首页,点击热搜tab,校验已进入热搜页面
在这里插入图片描述

3、使用Pycharm创建虚拟环境

在虚拟环境中安装两个包:

pip install airtest

pip install pocoui

4、将airtestIDE的脚本复制到pycharm中

# @Time  : 2022/7/15 17:10
# Author : 拒绝内卷的小测试

# -*- encoding=utf8 -*-
__author__ = "拒绝内卷的小测试"

from airtest.core.api import *

auto_setup(__file__)
app = "com.baidu.searchbox"
start_app(app)
wait(Template(r"tpl1657872541796.png", record_pos=(-0.194, -0.73), resolution=(1080, 2400)))
touch(Template(r"tpl1657872574591.png", record_pos=(-0.194, -0.737), resolution=(1080, 2400)))
snapshot(filename="百度热搜截图.png",msg="校验进入热搜tab内")
assert_exists(Template(r"tpl1657872707696.png", record_pos=(-0.003, -0.745), resolution=(1080, 2400)), "校验进入热搜tab内")
assert_exists(Template(r"tpl1657873309826.png", record_pos=(-0.109, -0.042), resolution=(1080, 2400)), "肯定不存在,报错")
stop_app(app)

代码复制过来后,图⽚变成了数据,此时我们需要将图片复制过来,在Airtest IDE的脚本名上右键,选择打开当前项目目录
在这里插入图片描述
在打开的项目目录中将所有的图片文件复制并粘贴到Pycharm新建的项项的根目录下即可
在这里插入图片描述
在这里插入图片描述

5、运行脚本

配置脚本运⾏环境 AndroidUiautomationPoco,在导包出添加

from poco.drivers.android.uiautomation import AndroidUiautomationPoco
AndroidUiautomationPoco()

添加后即可正常运行脚本,首次运行手机上会有安装PocoService的提示,记得同意安装

# @Time  : 2022/7/15 17:10
# Author : 拒绝内卷的小测试

# -*- encoding=utf8 -*-
__author__ = "拒绝内卷的小测试"

from airtest.core.api import *
from poco.drivers.android.uiautomation import AndroidUiautomationPoco
AndroidUiautomationPoco()

auto_setup(__file__)
app = "com.baidu.searchbox"
start_app(app)
wait(Template(r"tpl1657872541796.png", record_pos=(-0.194, -0.73), resolution=(1080, 2400)))
touch(Template(r"tpl1657872574591.png", record_pos=(-0.194, -0.737), resolution=(1080, 2400)))
snapshot(filename="百度热搜截图.png",msg="校验进入热搜tab内")
assert_exists(Template(r"tpl1657872707696.png", record_pos=(-0.003, -0.745), resolution=(1080, 2400)), "校验进入热搜tab内")
assert_exists(Template(r"tpl1657873309826.png", record_pos=(-0.109, -0.042), resolution=(1080, 2400)), "肯定不存在,报错")
stop_app(app)

运行后我们是可以看见断言失败的message的
在这里插入图片描述
当把失败的断言注释掉后,代码正常运行无报错
在这里插入图片描述

6、代码下载

点击下载

随手点赞一次,运气增加一份。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

拒绝内卷的小测试

感谢老板的投喂

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值