airtest获取设备号和获取设备宽度、高度、绝对坐标 相对坐标、滑动屏幕
def setup_function():# 连接当前设备# HUAWEI honor 10 分辨率:2280*1080# OPPO R15 分辨率:2280*1080# Vivo x21 分辨率:2280*1080# onePlus 5T 分辨率:2160×1080 poco sevices启动不稳定# xiaomi mix2 元素无法识别# onePlus pocoserver无法启动device = Android()#获取设备号currentDevice = device.get_default_device()print("现在连接的测试设备:", currentDevice)auto_setup(__file__, logdir=True, devices=["android://127.0.0.1:5037/{currentDevice}?cap_method=MINICAP_STREAM&&ori_method=MINICAPORI&&touch_method=MINITOUCH".format(currentDevice=currentDevice),])stop_app('chuxin.shimo.shimowendang')start_app('chuxin.shimo.shimowendang')
def Android_device(self):''' 连接小米等安卓设备,需要参数cap_method=javacap '''device = Android()# 获取设备号currentDevice = device.get_default_device()print("现在连接的测试设备:", currentDevice)connect_device("android://127.0.0.1:5037/{currentDevice}?cap_method=javacap".format(currentDevice=currentDevice))
# 获取设备的高度和宽度
width, height = device().get_current_resolution()
# 校准滑动的起点和终点
start_pt = (width * 0.9, height / 2)
end_pt = (width * 0.1, height / 2)
# 滑动5次:
for i in range(5):swipe(start_pt, end_pt)sleep(1) # 等待设备的响应 w,h=device().get_current_resolution()#获取手机分辨率
touch([0.5*w, 0.5*h])#点击手机中心位置
swipe((0.5*w,0.8*h),vector=(0,-0.5),duration=0.1) #在0.1s内上划0.5个屏幕
airtest 获取分辨率 绝对坐标 相对坐标
airtest 获取当前屏幕分辨率
width = G.DEVICE.display_info['width']
height = G.DEVICE.display_info['height']
print(width,height)已知相对坐标 [0.12,0.709],转换成绝对坐标
x1 = 0.12*width
y1 = 0.709*height
touch([x1,y1])已知绝对坐标[88.1060],转换成相对坐标
x2 = 88/width
y2 = 1060/height
poco.click([x2,y2])
滑动屏幕
进入搜索结果以后,需要查看下面的各种问题,此时就需要不断向上滑动屏幕。这里有一点需要特别注意,Airtest只能获取当前屏幕上的元素布局信息,不在屏幕上的内容是无法获取的。这一点和Selenium是不一样的。
滑动屏幕使用的命令为swipe
,滑动屏幕需要使用坐标信息。但这种坐标和屏幕分辨率无关。这里的坐标
定义为:(x, y),其中x为横坐标,y为纵坐标。屏幕左上角为(0, 0),屏幕右下角为(1, 1),从左向右,横坐标从0逐渐增大到1,从上到下,纵坐标从0逐渐增大到1。
现在我要把屏幕向上滑动,那么在真机上面,我是先按住屏幕下方,然后把屏幕向上滑动,所以代码可以这样写:
# poco.swipe(起点坐标,终点左边)
poco.swipe([0.5, 0.8], [0.5, 0.2])
在一般情况下:
- 向上滑动,只需要改动纵坐标,且起点值大于终点值
- 向下滑动,只需要改动纵坐标,且起点值小于终点值
- 向左滑动,只需要改动横坐标,且起点值大于终点值
- 向右滑动,只需要改动横坐标,且起点值小于终点值
airtest获取设备号和获取设备宽度、高度、绝对坐标 相对坐标、滑动屏幕相关推荐
- linux设备管理之设备号与次设备号
linux设备管理之主设备号与次设备号 - jinzi - 博客园+ 剽窃 过来的. 记录下,以备查. 主设备号和次设备号 一个字符设备或者块设备都有一个主设备号和次设备号.主设备号和次设备号统称为 ...
- 设备驱动分类、设备号、字符设备
一.设备驱动分类 设备驱动分为三大类:字符设备.块设备.网络设备 1.字符设备 该设备对数据的处理按照字节流的形式进行的,支持顺序访问(是有时间的概念),也可以支持随机访问 典型的字符设备:串口.键盘 ...
- linux tty设备号,linux tty设备
/dev/console是什么 如果系统中存在多个tty设备,想象一下,这时内核启动的log应该打印在哪里,这时内核会从tty中选择一个最合适的作为console,当然内核启动参数中也可以明确的去指定 ...
- python pandas获取行号_python获取行号和函数名
敢用自己的名字做软件名字的,都有非常强大的自信.比如,垠语言什么的. awk的命名得自于它的三个创始人姓别的首字母,都是80来岁的老爷爷了.当然也有四个人的组合:流行的GoF设计模式.但对于我这游戏爱 ...
- php获取公众号_PHP 获取微信公众号openid
在公众号设置->功能设置->网页授权域名->添加域名授权 ``` header("Content-type: text/html; charset=utf-8") ...
- linux中的住设备号和次设备号
转自:http://linux-tutorial.info/modules.php?name=MContent&pageid=94 做了少许加粗和删减,需要完整版的请看原文. Major an ...
- linux驱动主从设备号,在 Linux 设备管理中,除了设备类型外,内核还需要一对被称为主从设备号的参数,才能唯一标识一个设备。( )相同的设备使用相同的驱动程序...
[单选题]"江山易改,秉性难移"指的是人格的 [单选题]欲设计一个8位的数值比较器,需要用( )片74LS85级联. [多选题]Tricore IO的访问特权级别分为哪些级? [多 ...
- java开源办公OA项目:通过极光SDK获取设备号绑定到用户属性
用户需求:用户自行开发app,想通过O2OA集成的极光推送消息把O2OA的消息发送到自己的app中.前提是这个app需要集成极光的SDK. 关于集成极光SDK可以参考极光官方的文档:集成文档 获取手机 ...
- linux主设备编号从0到多少,Linux驱动开发之主设备号找驱动,次设备号找设备
一.引言 很久前接触linux驱动就知道主设备号找驱动,次设备号找设备.这句到底怎么理解呢,如何在驱动中实现呢,在介绍该实现之前先看下内核中主次设备号的管理: 二.Linux内核主次设备号的管理 Li ...
最新文章
- 逆向分析c++ vector向量
- PI=3.1415926....
- pd.merge 结果出现重复_COUNTIFS函数技巧之去重复值计数(思路分析,过程详解)...
- js 控制 获取 dropdownlist的值
- VMware Fusion配置CentOS系统
- linux之history和!命令联合使用
- java string == 比较,Java 基础 之 String 的比较
- Matplotlib 中文用户指南 4.1 文本介绍
- SQL UNION使用
- 全国首款网页版(web)真3D商城
- 原创 | 基于开源的互联网和深度信息技术
- java 1.4 下载_j2sdk1.4.2
- 单片机 STM32 HAL IO扩展 74HC595 例子代码
- 19年4月超星尔雅《移动互联网时代的信息安全与防护》期末考试参考答案(94分)
- 水滴的“创益矩阵”:“万物”皆可连接公益
- 二十、数据库的高可用是怎么实现的?
- 没有计算机网络地址怎么办,教大家电脑没有ip地址mac地址怎么办
- 600度近视眼恢复方法_高度近视600度如何恢复视力?这三大办法
- 瞒不住了,Prefetch 就是一个大谎言
- 机械制造与自动化类毕业论文文献有哪些?