airtest.core.api module

这个模块包含了Airtest核心API。

init_device(platform='Android'uuid=None**kwargs)[源代码]

初始化设备,并设置为当前设备。

参数:
  • platform – Android, IOS or Windows
  • uuid – 目标设备的uuid,例如Android的序列号,Windows的窗口句柄,或iOS的uuid
  • kwargs – 可选的平台相关的参数,例如Android下的 ``cap_method=JAVACAP``参数
返回:

device对象

connect_device(uri)[源代码]

用URI字符串来初始化设备,并且设置为当前设备。

参数:

uri – 一个用于初始化设备的URI字符串,例如 android://adbhost:adbport/serialno?param=value&param2=value2

返回:

device对象

示例:
  • android:/// # 当前Android设备,使用默认参数连接
  • android://adbhost:adbport/1234566?cap_method=javacap&touch_method=adb # 远程Android设备,并且使用了自定义参数
  • windows:/// # 本地Windows桌面
  • ios:/// # iOS 设备

device()[源代码]

返回当前正在使用中的设备。

返回: 当前设备实例

set_current(idx)[源代码]

设置当前设备。

参数: idx – uuid或已初始化的设备列表中的编号,从0开始
引发: IndexError – 当查找不到设备时
返回: None
支持平台: Android, iOS, Windows

auto_setup(basedir=Nonedevices=Nonelogdir=Noneproject_root=Nonecompress=None)[源代码]

自动配置运行环境,如果当前没有连接设备的话,就默认尝试连接Android设备。

参数:
  • basedir – 设置当前脚本的所在路径,也可以直接传 __file__ 变量进来
  • devices – 一个内容为 connect_device uri 字符串的列表
  • logdir – 可设置脚本运行时的log保存路径,默认值为None则不保存log,如果设置为True则自动保存在<basedir>/log目录中
  • project_root – 用于设置PROJECT_ROOT变量,方便 using 接口的调用
  • compress – 屏幕截图的压缩比率,在[1, 99]范围内的整数,默认是10

shell(*args**kwargs)[源代码]

在目标设备上运行远程shell指令

参数: cmd – 需要在设备上运行的指令,例如 ls /data/local/tmp
返回: shell指令的输出内容
支持平台: Android

start_app(*args**kwargs)[源代码]

在设备上启动目标应用

参数:
  • package – 想要启动的应用包名package name,例如 com.netease.my
  • activity – 需要启动的activity,默认为None,意为main activity
返回:

None

支持平台:

Android, iOS

stop_app(*args**kwargs)[源代码]

终止目标应用在设备上的运行

参数: package – 需要终止运行的应用包名 package name,另见 start_app
返回: None
支持平台: Android, iOS

clear_app(*args**kwargs)[源代码]

清理设备上的目标应用数据

参数: package – 包名 package name,另见 start_app
返回: None
支持平台: Android

install(*args**kwargs)[源代码]

安装应用到设备上

参数:
  • filepath – 需要被安装的应用路径
  • kwargs – 平台相关的参数 kwargs,请参考对应的平台接口文档
返回:

None

支持平台:

Android

uninstall(*args**kwargs)[源代码]

卸载设备上的应用

参数: package – 需要被卸载的包名 package name,另见 start_app
返回: None
支持平台: Android

snapshot(*args**kwargs)[源代码]

对目标设备进行一次截图,并且保存到文件中。

参数:
  • filename – 保存截图的文件名,默认保存路径为 ``ST.LOG_DIR``中
  • msg – 截图文件的简短描述,将会被显示在报告页面中
  • quality – 图片的质量,[1,99]的整数,默认是10
  • max_size – the maximum size of the picture, e.g 1200
返回:

截图文件的绝对路径

支持平台:

Android, iOS, Windows

wake(*args**kwargs)[源代码]

唤醒并解锁目标设备

返回: None
支持平台: Android

注解

在部分品牌手机上可能无法生效

home(*args**kwargs)[源代码]

返回HOME界面。

返回: None
支持平台: Android, iOS

touch(*args**kwargs)[源代码]

在当前设备画面上进行一次点击

参数:
  • v – 点击位置,可以是一个Template图片实例,或是一个绝对坐标 (x, y)
  • times – 点击次数
  • kwargs – 平台相关的参数 kwargs,请参考对应的平台接口文档
返回:

实际点击位置坐标 (x, y)

支持平台:

Android, Windows, iOS

click(*args**kwargs)

在当前设备画面上进行一次点击

参数:
  • v – 点击位置,可以是一个Template图片实例,或是一个绝对坐标 (x, y)
  • times – 点击次数
  • kwargs – 平台相关的参数 kwargs,请参考对应的平台接口文档
返回:

实际点击位置坐标 (x, y)

支持平台:

Android, Windows, iOS

double_click(*args**kwargs)[源代码]

swipe(*args**kwargs)[源代码]

在当前设备画面上进行一次滑动操作。

有两种传入参数的方式

  • swipe(v1, v2=Template(...)) # 从 v1 滑动到 v2
  • swipe(v1, vector=(x, y)) # 从 v1 开始滑动,沿着vector方向。
参数:
  • v1 – 滑动的起点,可以是一个Template图片实例,或是绝对坐标 (x, y)
  • v2 – 滑动的终点,可以是一个Template图片实例,或是绝对坐标 (x, y)
  • vector – 滑动动作的矢量坐标,可以是绝对坐标 (x,y) 或是屏幕百分比,例如 (0.5, 0.5)
  • **kwargs – 平台相关的参数 kwargs,请参考对应的平台接口文档
引发:

Exception – 当没有足够的参数来执行滑动时引发异常

返回:

原点位置和目标位置

支持平台:

Android, Windows, iOS

pinch(*args**kwargs)[源代码]

在设备屏幕上执行一个双指pinch捏合操作

参数:
  • in_or_out – 向内捏合或向外扩大,在[“in”, “out”] 中枚举一个值
  • center – pinch动作的中心位置,默认值为None则为屏幕中心点
  • percent – pinch动作的屏幕百分比,默认值为0.5
返回:

None

支持平台:

Android

keyevent(*args**kwargs)[源代码]

在设备上执行keyevent按键事件

参数:
  • keyname – 平台相关的按键名称
  • **kwargs – 平台相关的参数 kwargs,请参考对应的平台接口文档
返回:

None

支持平台:

Android, Windows, iOS

text(*args**kwargs)[源代码]

在目标设备上输入文本,文本框需要处于激活状态。

参数:
  • text – 要输入的文本
  • enter – 是否在输入完毕后,执行一次 Enter ,默认是True
返回:

None

支持平台:

Android, Windows, iOS

sleep(*args**kwargs)[源代码]

设置一个等待sleep时间,它将会被显示在报告中

参数: secs – sleep的时长
返回: None
支持平台: Android, Windows, iOS

wait(*args**kwargs)[源代码]

等待当前画面上出现某个匹配的Template图片

参数:
  • v – 要等待出现的目标Template实例
  • timeout – 等待匹配的最大超时时长,默认为None即默认取 ST.FIND_TIMEOUT 的值
  • interval – 尝试查找匹配项的时间间隔(以秒为单位)
  • intervalfunc – 在首次尝试查找匹配失败后的回调函数
引发:

TargetNotFoundError – 在超时后仍未找到目标则触发

返回:

匹配目标的坐标

支持平台:

Android, Windows, iOS

exists(*args**kwargs)[源代码]

检查设备上是否存在给定目标

参数: v – 要检查的目标
返回: 如果未找到目标,则返回False,否则返回目标的坐标
支持平台: Android, Windows, iOS

find_all(*args**kwargs)[源代码]

在设备屏幕上查找所有出现的目标并返回其坐标列表

参数: v – 寻找目标
返回: 坐标列表, [(x, y), (x1, y1), …]
支持平台: Android, Windows, iOS

assert_exists(*args**kwargs)[源代码]

设备屏幕上存在断言目标

参数:
  • v – 要检查的目标
  • msg – 断言的简短描述,它将被记录在报告中
引发:

AssertionError – 如果断言失败

返回:

目标坐标

支持平台:

Android, Windows, iOS

assert_not_exists(*args**kwargs)[源代码]

设备屏幕上不存在断言目标

参数:
  • v – 要检查的目标
  • msg – 断言的简短描述,它将被记录在报告中
引发:

AssertionError – 如果断言失败

返回:

None.

支持平台:

Android, Windows, iOS

assert_equal(*args**kwargs)[源代码]

断言两个值相等

参数:
  • first – 第一个值
  • second – 第二个值
  • msg – 断言的简短描述,它将被记录在报告中
引发:

AssertionError – 如果断言失败

返回:

None

支持平台:

Android, Windows, iOS

assert_not_equal(*args**kwargs)[源代码]

断言两个值不相等

参数:
  • first – 第一个值
  • second – 第二个值
  • msg – 断言的简短描述,它将被记录在报告中
引发:

AssertionError – 如果断言异常

返回:

None

支持平台:

Android, Windows, iOS

这个模块包含了Airtest核心API手册相关推荐

  1. ext核心API详解

    http://hi.baidu.com/j2me/profile 1 EXT核心API详解(一)-Ext 1 EXT核心API详解(二)-Array/Date/Function/Number/Stri ...

  2. Android蓝牙开发(一)蓝牙模块及核心API

    本文主要介绍Android蓝牙开发中基础知识:蓝牙模块及核心API. 关于蓝牙的连接及通讯功能实现,欢迎查阅下一篇文章:Android蓝牙开发(二)蓝牙消息传输实现. 蓝牙模块 从蓝牙4.0开始包含两 ...

  3. (转)Linux Kernel核心中文手册

    转自糖蒜的小屋http://blog.csdn.net/seastar_pickle/category/101975.aspx?PageNumber=2 Hardware Basic( 硬件基础知识  ...

  4. Spring Security系列教程11--Spring Security核心API讲解

    前言 经过前面几个章节的学习,一一哥 带大家实现了基于内存和数据库模型的认证与授权,尤其是基于自定义的数据库模型更是可以帮助我们进行灵活开发.但是前面章节的内容,属于让我们达到了 "会用&q ...

  5. Spring Security系列教程-Spring Security核心API讲解

    前言 经过前面几个章节的学习,一一哥 带大家实现了基于内存和数据库模型的认证与授权,尤其是基于自定义的数据库模型更是可以帮助我们进行灵活开发.但是前面章节的内容,属于让我们达到了 "会用&q ...

  6. Activiti6.0 (三)核心API

    核心API RepositoryService: 负责对流程定义文件的管理,操作一些静态文件(流程xml.流程图片),获取部署对象和资源对象 RunTimeService: 对流程进行控制,可用于启动 ...

  7. SDL开发(一):SDL简介及2.0核心API解析

    文章目录 零. 参考文献 一. 什么是SDL? 1. SDL 库分类 2. SDL 子系统分类 二. SDL2.0核心API解析 1. 初始化函数 SDL_Init() 2. 创建窗口 SDL_Cre ...

  8. JAVAWEB开发之工作流详解(一)——Activiti的环境搭建、插件安装、核心API

    工作流的概念 工作流(Workflow),就是"业务过程的部分或整体在计算机应用环境下的自动化",它主要解决的是"使在多个参与者之间按照某种预定义的规则传递文档.信息或任 ...

  9. Feign核心API:Contract

    Feign的核心API:Contract 前言 Feign Contract parseAndValidateMetadata BaseContract Default SynchronousMeth ...

最新文章

  1. 从词袋到Transfomer,NLP十年突破史
  2. px4驱动linux,px4开发指南——linux下qgroundcontrol地面站安装
  3. 华为首款Harmonyos摄像头,掀起家居安防大变革 华为首款HarmonyOS智能摄像头发布...
  4. vue 部门tree样式_vue+Element实现tree树形数据展示
  5. Android报“android.content.res.Resources$NotFoundException: String resource ID #0x2”错误
  6. centOS下lnamp安装
  7. Laravel Cache 的缓存文件在到期后是否会自动删除
  8. 关于如何解决特定场景下WPF4.0中“XamlWriter.Save序列化限制”问题的一种思路
  9. 程序员的自我修养 - 符号修饰 函数签名 以及一个引申的问题: extern c
  10. Android的Intent系统调用
  11. 基于AES的图像加密
  12. centos7使用iso镜像离线安装依赖工具
  13. 我还在努力,你千万不要喜欢上别人
  14. [JAVA毕业设计]高速公路收费管理源码获取和系统演示
  15. GSM与GPRS的区别
  16. (转)做好产品需求文档的10步
  17. PNG alpha transparency: AlphaImageLoader filter flaws
  18. 不可思议但又无处不在的漏洞,WEB安全基础入门—业务逻辑漏洞
  19. 热情起舞小金链尽显墨西哥黑帮气质,这个C4D短片有点辣!
  20. 什么是长连接,什么是短连接?

热门文章

  1. 计算机基础和组成原理——学习资料
  2. Github上的iOS资料-个人记录
  3. 高一凡-数据结构第2章-线性表
  4. python计时器类
  5. 【C语言】VS编辑器实用的调试技巧
  6. 如何在LibreOffice Writer文档中显示,隐藏和更改字段底纹的颜色
  7. 基于可持久化内存-AEP的KV存储引擎
  8. destoon首页底部加产品分类拼音索引
  9. hdu1426一道很有意思的题目:数独
  10. ubuntu 卸载 cuda 以及再次安装