本次测试使用的:
- Windows 7电脑
- 手机(Android版本10)
首先保证电脑与手机在同一个局域网内,usb线连接手机与电脑,手机USB调试模式已开启。
执行命令adb devices查看手机是否已连接成功。
执行以下脚本:
# -*- encoding=utf8 -*-
__author__ = "Airtest"
from airtest.core.api import *
#导入了 airtest 库中的 ADB 类,这个类提供了与 Android 设备进行交互的方法
from airtest.core.android.adb import ADB
auto_setup(__file__)
def adb_connect_devices():
# 创建 ADB 实例
adb = ADB()
#获取设备的设备号列表
devices = adb.devices()
device_list = []
for dev in devices:
#设置端口号
adb.cmd(f"-s {dev[0]} tcpip 5555", device=False)
sleep(2)
#初始化设备,并且设置为当前设备
dev_connect = connect_device(f"Android:///{dev[0]}")
# 获取当前设备IP地址
ip = dev_connect.get_ip_address()
#print(f"dev[0]的IP是{ip}")
adb.cmd(f"connect {ip}:5555", device=False)
device_list.append(f"Android://{ip}:5555")
return device_list
if __name__ == '__main__':
r = adb_connect_devices()
print(r)
获取到无线连接的列表,如下图:
断开手机、电脑数据线。
执行命令adb devices,此时已有设备连接列表。
执行以下脚本打开微信应用测试下:
# -*- encoding=utf8 -*-
__author__ = "abc"
import time
import sys
import os
import datetime
import logging
from airtest.core.api import *
#导入异常
from poco.exceptions import *
from airtest.core.android.android import Android
from poco.drivers.android.uiautomation import AndroidUiautomationPoco
from multiprocessing import Pool
from threading import Thread
#
import configparser
#设置输出log级别
logger = logging.getLogger("airtest")
#logger = logging.getLogger()
logger.setLevel(logging.WARN)
auto_setup(__file__)
#手机设备号
#device_name = sys.argv[1]
device_name = "192.168.1.104:5555"
try:
device_1 = connect_device('android:///%s'%(device_name))
except Exception as e:
print("##########链接设备出错,%s"%(e))
print("60秒后...")
time.sleep(60)
sys.exit(0)
poco = AndroidUiautomationPoco(device=device_1,use_airtest_input=True, screenshot_each_action=False)
android = Android(serialno=device_name )
#time=datetime.datetime.now()
#获取屏幕宽高
screen_xy = poco.get_screen_size()
print("*******设备名称:%s"%(device_name))
print("屏幕大小", screen_xy)
dy_app = "com.tencent.mm"
#sys.exit(0)
#APP首页
wx_wz_time = android.start_app_timing(dy_app,".ui.LauncherUI")
print("打开:%s"%(wx_wz_time))
#打开APP后,
time.sleep(3)
print("已启动")