订阅本栏目 RSS您所在的位置: 深山工作室 > python > 正文

Appium获取手机分辨率 & 自适应设备下滑刷新

2022/9/23 15:58:32 字体: 浏览 1736

需求背景:appium做手机自动化的时候,有个很固定的需求就是竖直滑动刷新页面信息(比如:微信朋友圈、微博等),开始的时候我是固定写死的,如driver.swipe(300, 1000, 300, 300),但是这样写的弊端也很明显,代码不够健壮,如果遇到小屏设备或者大屏设备,滑动的幅度看起来就可能过大或过小。所以我们需要根据不同分辨率的设备做自适应,使代码在各种大小的屏幕上表现的行为和体验都比较一致。

首先,我们需要获取屏幕的宽和高,Appium(python)可用get_window_size()方法获取屏幕的宽和高(可用键值索引单独获取宽或高),然后按照屏幕尺寸定义滑动幅度占屏比。因为下滑刷新是比较常用的功能,所以我封装为一个函数,方便调用,代码如下:

def scroll_down(self):
    width = self.get_window_size()['width']
    height = self.get_window_size()['height']
    x = width / 2
    starty = height * 0.75
    endy = height * 0.20
    self.swipe(x, starty, x, endy, 500)
调用方式为scroll_down(driver),传入自己的Appium WebDriver对象即可;

下滑幅度(通过修改示例代码中的0.75和0.20来实现)和滑动时间也可以根据自己的需求修改,如果要让该函数更加通用和健壮,也可以将这些定制化的参数提取到函数的入参。

相关阅读
超级实用且不花哨的js代码大全( 1 )
呼伦贝尔市四季风旅行社
了解html基础知识之html标签集合
Object.assign的一些用法
HTML文档中meta标签的作用
石家庄燕赵旅行社有限公司
随心所欲的定制弹出窗口
uni-app设置像页面html或者body的全局背景色
更多信息>>栏目类别选择
百度小程序开发
微信小程序开发
微信公众号开发
uni-app
asp函数库
ASP
DIV+CSS
HTML
python
更多>>同类信息
Android移动端自动化测试:使用UIAutomatorViewer与Selenium定位元素
python通过代码修改pip下载源让下载库飞起
python里面requests.post返回的res.text还有其它的吗
windows7环境下安装配置jdk
python对微信操作要用到这两个库wxpy与itchat
8种Python字符串拼接的方法,你知道几种
更多>>最新添加文章
dw里面查找替换使用正则删除sqlserver里面的CONSTRAINT
Android移动端自动化测试:使用UIAutomatorViewer与Selenium定位元素
抖音直播音挂载小雪花 懂车帝小程序
javascript获取浏览器指纹可以用来做投票
火狐Mozilla Firefox出现:无法载入您的Firefox配置文件 它可能已经丢失 或是无法访问 问题解决集合处理办法
在Android、iOS、Windows、MacOS中微信小程序的文件存放路径
python通过代码修改pip下载源让下载库飞起
python里面requests.post返回的res.text还有其它的吗
更多>>随机抽取信息
仿淘宝网站的导航标签效果!
window7简称win7下可以运行ASP文件,但是不能访问access数据库的解决办法
自由鸟旅行社
ASP汉字图片验证码
asp中fso实现对文件或文件夹进行创建删除等操作函数
刘浏家俱