使用Airtest中swipe方法由于不同分辨率的手机上滑动的坐标位置不同,所以想要兼容所有的手机,仅仅靠固定坐标就会出现问题

想要兼容所有的手机,可以按照如下思路进行

1、首先获取手机的分辨率,可以使用Airtest中的poco模块的get_screen_size()方法

poco.get_screen_size()

此时获取到了手机的分辨率,可以看出屏幕宽等于900,长度等于1600

2、将屏幕的宽度和长度分别赋值为x和y,注意屏幕左上角的坐标为(0,0),所以左下角的坐标为(0,1600),右上角的坐标为(900,0),右下角的坐标为(900,1600)

xy = poco.get_screen_size()
x = xy[0]
y = xy[1]

3、按照屏幕的比例进行滑动,我想要从屏幕的右侧向左侧滑动,就可以按照如下方法进行,从(0.9*x,0.5*y)的坐标移动到(0.1*x,0.5y)的坐标,也就是从(810,800)的坐标移动到(90,800)的坐标

swipe((0.9*x,0.5*y),(0.1*x,0.5*y),duration=1)

4、完整代码运行

# -*- encoding=utf8 -*-
__author__ = "fengruishou" from airtest.core.api import * from poco.drivers.android.uiautomation import AndroidUiautomationPoco
poco = AndroidUiautomationPoco(use_airtest_input=True, screenshot_each_action=False) auto_setup(__file__) print(poco.get_screen_size())
xy = poco.get_screen_size()
x = xy[0]
y = xy[1]
swipe((0.9*x,0.5*y),(0.1*x,0.5*y),duration=1)

【Airtest】Airtest中swipe方法兼容不同分辨率的解决方法的更多相关文章

  1. CSS3中的border-radius兼容IE低版本解决方法

    ie-css3.htc先说道说道这斯是弄啥嘞ie-css3.htc是一个可以让IE浏览器支持部份CSS3属性的htc文件,不只是box-shadow,它还可以让你的IE浏览器支持圆角属性border- ...

  2. WAMP中phpMyAdmin登陆不了问题的解决方法

    WAMP中phpMyAdmin登陆不了问题的解决方法

  3. 问题-[Access]“无法打开工作组信息文件中的表 'MSysAccounts'”的问题的解决方法

    问题现象:ado.net oledb方式访问Access数据库文件时报错“无法打开工作组信息文件中的表 'MSysAccounts'”的问题的解决方法  问题处理:1.数据库名称不能命名为:Syste ...

  4. PHP开发中常见的安全问题详解和解决方法(如Sql注入、CSRF、Xss、CC等

    页面导航: 首页 → 网络编程 → PHP编程 → php技巧 → 正文内容 PHP安全 PHP开发中常见的安全问题详解和解决方法(如Sql注入.CSRF.Xss.CC等) 作者: 字体:[增加 减小 ...

  5. jquery ui中 accordion的问题及我的解决方法

    原文:jquery ui中 accordion的问题及我的解决方法 jquery有一套所谓的ui组件,很不错的.如果有兴趣的朋友,可以参考http://jqueryui.com/ 但其中的accord ...

  6. ASP.NET MVC中对Model进行分步验证的解决方法

    原文:ASP.NET MVC中对Model进行分步验证的解决方法 在我之前的文章:ASP.NET MVC2.0结合WF4.0实现用户多步注册流程中将一个用户的注册分成了四步,而这四个步骤都是在完善一个 ...

  7. JS网站当前日期在IE9、Chrome和FireFox中年份显示为113年的解决方法 getFullYear();

    JS网站当前日期在IE9.Chrome和FireFox中年份显示为113年的解决方法 getFullYear();

  8. C# 中DataGridView和ListView闪烁问题的解决方法

    C# 中DataGridView和ListView闪烁问题的解决方法 方法一首先定义类,将此类放在datagridview或ListView所在的窗体类外面,然后代码如下, <span styl ...

  9. 关于CUDA C 项目中“ error C2059: 语法错误:“<” ”问题的解决方法

    该问题的关键在于理解CUDA项目中C\C++文件需要由c++编译器进行编译,而CUDA C的源文件需要由CUDA的编译器nvcc.exe进行编译. 发生该语法错误的原因是cu文件被C++编译器所编译, ...

随机推荐

  1. Hive的架构(二)

    02 Hive的架构 1.Hive的架构图 2.Hive的服务(角色) 1.用户访问接口 ​ CLI(Command Line Interface):用户可以使用Hive自带的命令行接口执行Hive ...

  2. map1

    map2.insert(make_pair("sale", 1)); map2.count("development");//key为development的数 ...

  3. oracle 创建表的规则

    1.表明首字母 应该为字母 2.表名的最大长度为30个字符 3.不能使用oracle保留字和关键字来作表名 4.同一用户下的不同表不能具有相同的名称 5.可以使用下划线.数字和字母,但不能使用空格与单 ...

  4. WinServer2008R2远程桌面长时间保持连接

    开始------运行------gpedit.msc 计算机配置------管理模板-----Windows组件-----远程桌面服务------远程桌面会话主机------会话时间限制 修改两项设置 ...

  5. GO语言学习笔记1-输入带空格的字符串

    最近开始学习GO语言,并做了一些编程练习.有道题要输入带空格的字符串,这在C/C++中很容易实现,但GO中好像并不那么容易.学过C/C++的可能都知道,在C中可以使用gets()函数,在C++可以使用 ...

  6. es之零停机重新索引数据

    实际生产,对于文档的操作,偶尔会遇到这种问题: 某一个字段的类型不符合后期的业务了,但是当前的索引已经创建了,我们知道es在字段的mapping建立后就不可再次修改mapping的值 比如: 1): ...

  7. pycharm selenium 安装firefox驱动和Google驱动教程

    一.下载Firefox浏览器或Google浏览器 下载渠道有很多,直接下载最新版的就可以了. 二.下载驱动 Firefox驱动 地址:https://github.com/mozilla/geckod ...

  8. sqli-labs(17)

    0x01简介 百度翻译了一下 基于错误的更新查询 字符型 第一次遇到这种情况 那我们先看看源代码行吧 不懂函数的百度 $result = mysql_query($sql);//返回查询的数据的一个结 ...

  9. GIT的安装和配置

  10. kafka原理和实践

    https://blog.csdn.net/FAw67J7/article/details/79885695 介绍 https://www.w3cschool.cn/apache_kafka/apac ...