首页 > 其他分享 >Airtest的iOS实用接口介绍

Airtest的iOS实用接口介绍

时间:2023-08-18 10:33:12浏览次数:40  
标签:__ app iOS 接口 Airtest APP

1. 前言

前段时间Airtest更新了1.3.0.1版本,里面涉及非常多的iOS功能新增和改动,今天想详细跟大家聊一下里面的iOS设备接口。

PS:本文示例均使用本地连接的iOS设备,Airtest版本为1.3.0.1 。

2. 安装接口:installinstall_app

Airtest支持通过本地.ipa文件安装APP,也支持通过下载链接安装APP,以本地ipa文件为例:

# -*- encoding=utf8 -*-
__author__ = "AirtestProject"
​
from airtest.core.api import *
auto_setup(__file__)
​
install(r"D:\my_popo\email.ipa") 

当然上述装包功能,我们用 device().install_app 也可以实现:

# -*- encoding=utf8 -*-
__author__ = "AirtestProject"
​
from airtest.core.api import *
auto_setup(__file__)
​
dev = device()
dev.install_app(r"D:\my_popo\email.ipa") 

3. 卸载接口:uninstalluninstall_app

卸载接口与安装接口类似,可以直接 uninstall ,也可以通过 device().uninstall_app 来卸载指定APP,这里以 uninstall_app 为例:

# -*- encoding=utf8 -*-
__author__ = "AirtestProject"
​
from airtest.core.api import *
auto_setup(__file__)
​
dev = device()
dev.uninstall_app("com.netease.mailmaster")

当然换成 install 接口也是一样的效果:

# -*- encoding=utf8 -*-
__author__ = "AirtestProject"
​
from airtest.core.api import *
auto_setup(__file__)
​
uninstall("com.netease.mailmaster")

4. 列出所有APP的接口:list_app

我们可以用 list_app 列出iOS设备的APP列表,并且支持在 list_app("") 里传入要列出的app类型,all、system、user ,分别对应全部APP、系统APP、用户安装的APP,这里以列出用户安装的APP信息为例:

# -*- encoding=utf8 -*-
__author__ = "AirtestProject"
​
from airtest.core.api import *
auto_setup(__file__)
​
dev = device()
​
#列出并打印用户安装的APP
print("---------以下是用户安装的APP的信息-----------")
user_app = dev.list_app("user")
print(user_app)

PS:在1.3.0.1版本的Airtest里面使用该接口,会报一个 TypeError: list_app() got an unexpected keyword argument 'type' 的错误,我们将在后续的版本中修复它。

5. 剪切板功能:get_clipboardset_clipboard

新版Airtest还支持设置iOS设备的剪切板,我们可以从一个简单的示例来查看这个功能:

  • 设置剪切板内容
  • 获取并打印剪切板内容
  • 粘贴剪切板内容
# -*- encoding=utf8 -*-
__author__ = "AirtestProject"
​
from airtest.core.api import *
auto_setup(__file__)
​
#设置剪贴板内容
set_clipboard("content")
​
#获取并打印剪切板内容
text = get_clipboard()
print("当前剪切板内容:" + text)
​
#单击唤出粘贴按钮
touch([50,310])
​
#粘贴剪切板内容
touch(Template(r"tpl1692173001410.png", record_pos=(-0.38, -0.788), resolution=(750, 1624)))
​

6. 小结

今天的iOS接口就介绍到这里,下期我们可以一起看看Airtest里面封装的tidevice接口,能带来哪些iOS功能。如果对我们的内容感兴趣的话,别忘了持续关注我们哟~


AirtestIDE下载:airtest.netease.com/
Airtest 教程官网:airtest.doc.io.netease.com/
搭建企业私有云服务:airlab.163.com/b2b

官方答疑 Q 群:117973773

标签:__,app,iOS,接口,Airtest,APP
From: https://www.cnblogs.com/AirtestProject/p/17639750.html

相关文章

  • t113-c-lvgl触摸接口接入
    整合一下最近搞的东西,顺便设计一下ui移植触摸复制port文件到src目录下同时改名字和删除掉不用的东西:/***@filelv_port_indev_templ.c**//*Copythisfileas"lv_port_indev.c"andsetthisvalueto"1"toenablecontent*/#if1/**********************......
  • 2023年第 16期《Python接口自动化+Playwright 》课程,9月10号开学(课程全面升级!)!
    2023年第16期《Python接口自动化+Playwright》课程课程,9月10号开学(课程全面升级!)主讲老师:上海-悠悠上课方式:微信群视频在线教学,方便交流本期上课时间:2023年9月10号-2023年12月3号,晚上20:30-22:30报名费:报名费3000一人(周期3个月)联系微信/QQ:283340479课表如下直播课程主......
  • 使用protobuf生成各大厂的开放平台接口
    protoc-gen-go_api一款用protobuf文件生成go的http调用代码。具体代码见protoc-gen-go_api安装goinstallgithub.com/dev-openapi/protoc-gen-go_api@latest使用依赖googleapis的http.proto和annotations.proto。并且需要放到google/api/目录下如果google/api是在工程文......
  • 一分钟快速申请 iOS 证书及描述文件工具
    我们在开发iOS应用中,要用到各样的证书,在开发者中心创建这些证书比较麻烦,最气的是开发者中心的访问速度时快时慢,经常为了创建一个证书花费大量时间,而且也还要Mac电脑钥匙串,下面介绍在Windows环境下不用钥匙串迅速创建iOS各类证书及描述文件的方法。 这里用到一个工具Ap......
  • 防抖节流axios
    importaxiosfrom'axios'functionrequest(config){constinstance=axios.create({baseURL:'http://localhost:3000/api',timeout:10000})//防抖constdebounceTokenCancel=newMap()instance.interceptors.request.use(co......
  • ajax与axios
    概念:ajax(Asynchronous JavascriptAndXml):异步的js和xmlajax作用:1、使用ajax和服务器进行通信,就可以使用html+ajax替换jsp页面2、异步交互原生ajax<!DOCTYPEhtml><htmllang="en"><head>  <metacharset="UTF-8">  <title>Title</title&g......
  • 常量定义在接口还是类中?
    1.前言最近看项目的时候发现,这个项目把常量定义在接口当中,感觉到很神奇,随之我就想到了一个问题,竟然常量可以定义到接口里,也可以定义到类和枚举中,哪到底哪个更合适一点,于是我上网查了一些资料。得出一下结论2.解析publicinterfaceConstants{intUSER_EROOR=1;int......
  • 记一次奇葩接口
    1.回传接口要求第一次遇到这么奇葩的API接口回传要求:HTTPStatus为500、1000、或者超时、响应慢都要重试前10分钟每30s重试一次。后续每5分钟重试一次。如果12小时还未成功直接丢弃数据你说数据重要嘛,你后面又不要了,说不重要嘛12h的重试。。。所以避免折腾,所有丢弃的数据还......
  • Feign接口返回值加多层泛型,但没有反序列化彻底
    1、问题描述接口返回值加多层泛型,但没有反序列化彻底2、问题原因jackson-databindjar包版本的问题我们之前用的是2.11.2,这个版本有bug,版本变成2.11.3就好了......
  • 关于API数据接口获取商品的数据的说明
    获取商品数据已经成为许多应用程序的重要组成部分。为了实现这一目标,许多公司和技术开发者使用API数据接口来获取相关数据。本文将详细介绍如何使用API数据接口获取商品数据,并使用Python作为编程语言示例来展示相关代码。API数据接口是一种通信协议,它允许不同的应用程序或服务之间......