Win Airtest + 夜神模拟器 实现APP自动化
前言:
Airtest 是一个跨平台的UI自动化测试框架,适用于游戏和App。目前支持Windows、Android平台和 iOS 平台。
一、下载Airtest
下载地址:https://airtest.netease.com/

二、安装(这个环节就不做赘述了)
三、使用介绍
1.新建.air项目

2.整体页面

3.连接夜神模拟器(前提是夜神模拟器必须启动,之前文章已经做过介绍)
输入 adb connect 127.0.0.1:62001 点击连接按钮,再点击connect


4.Poco辅助窗选择Android

5.点击Yes如下(会多出一行代码)
from poco.drivers.android.uiautomation import AndroidUiautomationPoco poco = AndroidUiautomationPoco(use_airtest_input=True, screenshot_each_action=False)


此步完成,我们就可以进行简单的测试了
四、实际操作APP测试
1.元素抓取方式

2.测试计算器,实现1+1=2
# -*- encoding=utf8 -*-
__author__ = "TSmagic"
from airtest.core.api import *
from poco.drivers.android.uiautomation import AndroidUiautomationPoco
poco = AndroidUiautomationPoco(use_airtest_input=True, screenshot_each_action=False)
auto_setup(__file__)
def tap_ui(text_val, timeout=5):
node = poco(text=text_val)
if node.wait(timeout).exists():
node.click()
return True
return False
# 判断并打开计算器
if tap_ui("计算器"):
print("🚀 打开计算器APP成功")
# 执行 1 + 1 =
# 采用链式调用思维或直接顺序执行,保持逻辑一致
steps = ["1", "+", "1", "="]
for step in steps:
if not tap_ui(step):
print(f"❌ 找不到按键: {step}")
break
print(f"点击: {step}")
# 获取结果(假设结果文本包含在某个控件里)
# print("计算结果为: " + poco(type="android.widget.EditText").get_text())
else:
print("😰 未找到计算器APP,请检查屏幕或图标名称")
3.Poco定位方式以及核心API(参考下面的官方文档)
定位方式:https://airtest.doc.io.netease.com/IDEdocs/poco_framework/3_UI_script/
核心API:https://airtest.doc.io.netease.com/IDEdocs/poco_framework/4_poco_API/
五、主流模拟器的设备连接代码
| 模拟器名称 | adb连接代码 | 下载地址 |
| 夜神 | adb connect 127.0.0.1:62001(本文使用) | https://www.yeshen.com/ |
| 网易Mumu | adb connect 127.0.0.1:7555 | https://mumu.163.com/ |
| 逍遥 | adb connect 127.0.0.1:21503 | https://www.xyaz.cn/ |
| iTools | adb connect 127.0.0.1:54001 | http://pro.itools.cn/itools3(https://pc.qq.com/detail/18/detail_20118.html) |
| 天天 | adb connect 127.0.0.1:6555 | https://www.ttmnq.com/ |
| 海马玩 | adb connect 127.0.0.1:26744 | http://www.haimawan.com/ |
| BlueStacks | adb connect 127.0.0.1:5555 | https://news.bluestacks.cn/ |


浙公网安备 33010602011771号