Airtest封装的Tidevice接口有多好用(二)
一、前言
二、Airtest封装的Tidevice接口
2.1 list_app(udid ,app_type='user')
:列出手机上安装的应用列表
list_app()
接口,我们可以查询本地所连接设备上安装的应用列表,同时该接口支持对类型进行筛选,其中括号内的参数 udid
所填的是需要查询的设备 udid
, app_type
的话,是可以传入需要列出的应用程序类型,包括 user/system/all
。 from airtest.core.ios.ios import TIDevice
print(TIDevice.list_app(udid, "system"))
2.2 install_app(udid,file_or_url):安装ipa包
install_app(udid,file_or_url)
可以直接安装ipa包体,支持本地路径或URL的传入,实现ipa包的直接安装。 from airtest.core.ios.ios import TIDevice
TIDevice.install_app(udid,r"D:\demo.ipa")
TIDevice.install_app(udid,"https://download")
2.3 uninstall_app(udid,bundle_id):卸载 bundle_id 对应的包体
uninstall_app(udid,bundle_id)
接口可以直接卸载掉不需要的包体,其中传入的数据包括设备的 udid
、以及需要卸载的应用 bundle_id
。 from airtest.core.ios.ios import TIDevice
TIDevice.uninstall_app(udid,"com.163.itest.h12")
2.4 start_app(udid,bundle_id):启动 bundle_id 对应的包体
start_app(udid,bundle_id)
接口可以直接通过 bundle_id
打开对应的app或游戏,这样就不需要游戏或应用图标在桌面或某个指定页面。只需要传入设备的 udid
以及应用或游戏的 bundle_id
就可以实现直接开启应用 from airtest.core.ios.ios import TIDevice
TIDevice.start_app(udid,'com.apple.mobilecal')
2.5 stop_app(bundle_id):停止 bundle_id 对应的包体
stop_app(udid,bundle_id)
接口可以直接通过 bundle_id
关闭当前打开的的app或游戏,这样就不需要通过点击home键或退出键去实现退出应用了。 from airtest.core.ios.ios import TIDevice
TIDevice.stop_app(udid,'com.apple.mobilecal')
2.6 ps(udid):获取当前的进程列表
ps(udid)
可以直接查询当前所连接设备上正在运行的进程列表,并将进程的 pid
、 name
、 bundle_id
等以字典的形式展现出来,可以根据自己的需求去调用。 from airtest.core.ios.ios import TIDevice
print(TIDevice.ps(udid))
三、完整演示案例
# -*- encoding=utf8 -*-
__author__ = "Airtest"
from airtest.core.api import *
from airtest.core.ios.ios import TIDevice
auto_setup(__file__)
from poco.drivers.ios import iosPoco
poco = iosPoco()
#获取电脑所连接的iOS设备udid
devices = TIDevice.devices()
udid = devices[0]
# 安装测试包体
TIDevice.install_app(udid, r"./simpletest_resign.ipa")
sleep(3.0)
#此时查询一遍用户安装应用,确保app安装成功
print(TIDevice.list_app(udid, "user"))
#将刚下载好的应用打开
TIDevice.start_app(udid,'com.163.itest.h12')
sleep(2.0)
#输出当前设备的进程应用有哪些
print("当前设备上开启的进程有:{}".format(TIDevice.ps(udid)))
#进行简单测试
poco("点击测试").click()
touch(Template(r"tpl1722395968270.png", target_pos=8, record_pos=(0.0, 0.037), resolution=(750, 1334)))
#输入内容
poco("TextField").click()
text("Airtest")
#完成测试退出应用
TIDevice.stop_app(udid,'com.163.itest.h12')
sleep(3.0)
#将测试包体卸载
TIDevice.uninstall_app(udid,'com.163.itest.h12')
#此时再查询一遍用户安装应用,确保app卸载成功
print(TIDevice.list_app(udid, "user"))
四、小结
list_app
:列出手机上安装的应用列表,支持对类型进行筛选,包括 user/system/all
install_app
:安装ipa包,支持本地路径或URL uninstall_app
:卸载 bundle_id
对应的包体 start_app
:启动 bundle_id
对应的包体 stop_app
:停止 bundle_id
对应的包体 ps
:获取当前的进程列表 本文分享自微信公众号 - AirtestProject(AirtestProject)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
开源日报 | Ubuntu去年收入2.51亿美元;长城宽带圈钱跑路;中国AI出海的情况;水论文大法;“围剿”英伟达
欢迎阅读 OSCHINA 编辑部出品的开源日报,每天更新一期。 # 2024.8.1 今日要闻 Ubuntu 开发商 Canonical 2023 年收入达 2.51 亿美元 Ubuntu 开发商 Canonical 最近向英国 Companies House 提交了财务报表。Canonical 称 2023 年的收入为 2.51 亿美元,较 2022 年的 2.05 亿美元大幅增长(同比增长 22%)。不过其毛利率略有下降,从 82% 降至 80%。净利润为 1250 万美元,比上一年的 390 万美元大幅增长 220%。 现金流方面,Canonical 称 2023 年该数据为 4700 万美元,而上一年为 6200 万美元。此外,2023 年 Canonical 的平均员工人数为 1,034 人,而前一年为 858 人。 长城宽带被指圈钱跑路?1000户家庭断网苦等…… 长城宽带与它曾经的合作伙伴长宽互联,让某小区的上千户居民,痛恨至极。曾经,两者以提供宽带费为由,收取了居民上百万资金。如今,家中的网断了,长宽互联跑路了,业务员们也集体失联了……根据长城宽带方面的解释,他们已经与...
- 下一篇
案例分享|Alluxio在自动驾驶数据闭环中的应用
分享嘉宾: 孙涛 - 中汽创智智驾工具链数据平台开发专家 关于中汽创智: 中汽创智科技有限公司(以下简称“中汽创智”)由中国一汽、东风公司、南方工业集团、长安汽车和南京江宁经开科技共同出资设立。聚焦智能底盘、新能动力、智能网联三大业务领域,围绕“车端+云端+通信端”生态体系,开展前瞻、共性、平台、核心技术和产品研发及产业孵化。 分享提纲: 1. 自动驾驶数据闭环介绍; 2. Alluxio 在采集标注训练以及合规平台的一些应用场景; 3. 目前存在的问题以及未来规划。 观看完整分享 自动驾驶业务介绍 首先介绍一下中汽创智的自动驾驶整个开发业务流程。我们现在围绕自动驾驶开发主要强调的是数据闭环:开始是数据采集,数据采集之后进行预处理/数据挖掘,包括一些大模型的预刷;接着进入数据标注环节,主要包括人工标注和一些自动化的标注;标注以后产生的带有增值的数据集,提交给算法进行开发训练,如模型训练、评测和推理;最后再去迭代整个自动驾驶模型,模型经过上线进行实车部署。 在数据采集环节,自动驾驶的采集车需要经过改装,进行传感器的标定,主要在标定厂里对车端的一些传感器进行刚性位置的关系调...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- 设置Eclipse缩进为4个空格,增强代码规范
- SpringBoot2全家桶,快速入门学习开发网站教程
- CentOS7,CentOS8安装Elasticsearch6.8.6
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16
- CentOS7设置SWAP分区,小内存服务器的救世主
- Docker安装Oracle12C,快速搭建Oracle学习环境
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- Hadoop3单机部署,实现最简伪集群
- MySQL8.0.19开启GTID主从同步CentOS8