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

时间:2024-03-10 17:33:57

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.core.android.adb import *
 6 from airtest.core.android.android import *
 7 
 8 auto_setup(__file__)
 9 
10 PACKAGE = "com.tencent.af"
11 INSTALL_PATH = "/Users/starkYang/Desktop/Android_apk/test.apk"
12 
13 # 获得当前设备列表
14 adb = ADB()
15 devicesList = adb.devices()
16 devicesNum = len(devicesList) > 1
17 assert_equal(devicesNum,True,"设备连接数量至少为2")
18 
19 # 连接手机 默认连接方式
20 connect_device("android:///")
21 # 指定设备号连接
22 connect_device("android:///" + devicesList[0][0])
23 
24 android = Android()
25 #判断手机上是否安装包
26 try:
27     android.check_app(PACKAGE)
28 except AirtestError:
29     # 安装应用,是否同意覆盖安装,默认否
30     android.install_app(INSTALL_PATH,False)
31     # 覆盖安装
32     # android.install_app(INSTALL_PATH,True)
33     
34 # 清空包数据,有的手机可能没有权限
35 try:
36     clear_app(PACKAGE)
37 except:
38     # 卸载App
39     uninstall(PACKAGE)
40     # 安装应用
41     install(INSTALL_PATH)
42 
43 # 启动应用,可以带Acitvity,也可以不带   
44 start_app(PACKAGE)
45 # 休眠两秒
46 sleep(2)
47 # 停止应用
48 stop_app(PACKAGE)
49 
50 # 切换手机
51 connect_device("android:///" + devicesList[1][0])
52 
53 clear_app(PACKAGE)
54 uninstall(PACKAGE)
55 install(INSTALL_PATH)
56 
57 start_app(PACKAGE)
58 sleep(2)
59 stop_app(PACKAGE)