appnium实现向上滑动,向下滑动,向左滑动,向右滑动

一.配置连接

from appium import webdriver

desired_caps = {}
desired_caps[‘platformName‘] = ‘Android‘  # 系统名
desired_caps[‘platformVersion‘] = ‘5.1.1‘ # adb版本
desired_caps[‘deviceName‘] = ‘emulator-5554‘ # adb的名字 cmd输入adb devices可以查到

#导出模拟器中的apk,然后使用Android Kille将APK包进行反编译
desired_caps[‘appPackage‘] = ‘com.liulianp.android‘ # app的包名
desired_caps[‘appActivity‘] = ‘com.liulianp.android.module.welcome.SplashActivity‘ # app的主入口名
desired_caps[‘unicodeKeyboard‘] = True
desired_caps[‘resetKeyboard‘] = True

#启动appium-desktop服务器,服务器IP根据实际填写
ip = ‘appnium的IP‘
prot = ‘appnium的prot‘
driver = webdriver.Remote(f‘http://{id}:{prot}/wd/hub‘, desired_caps)

二.向各个方向滑动

#原理使用driver.swipe方法()  swipe(self, start_x, start_y, end_x, end_y, duration=None)
start_x:起始横坐标
start_y:起始纵坐标
end_x:结束横坐标
end_y:结束纵坐标
duration:起始位置到结束位置用时间单位ms
#你可以把它想象成手指在app界面的一开始按着的位置到结束的位置
def get_size(driver):
    ‘‘‘获取长宽‘‘‘
    x = driver.get_window_size()[‘width‘]
    y = driver.get_window_size()[‘height‘]
	return x,y

def swipeUp(driver, t=500, n=1):
    ‘‘‘向上滑动屏幕‘‘‘
    x,y=get_size(driver)
    x1 = x * 0.5
    y1 = y * 0.2
    y2 = y * 0.8
    for i in range(n):
        driver.swipe(x1, y1, x1, y2, t)

def swipeDown(driver, t=500, n=1):
    ‘‘‘向下滑动屏幕‘‘‘
    x,y=get_size(driver)
    x1 = x * 0.5
    y1 = y * 0.2
    y2 = y * 0.8
    for i in range(n):
        driver.swipe(x1, y1, x1, y2,t)

def swipLeft(driver, t=500, n=1):
    ‘‘‘向左滑动屏幕‘‘‘
    x,y=get_size(driver)
    x1 = x * 0.8
    y1 = y * 0.5
    x2 = x * 0.2
    for i in range(n):
        driver.swipe(x1, y1, x2, y1, t)

def swipRight(driver, t=500, n=1):
    ‘‘‘向右滑动屏幕‘‘‘
    x,y=get_size(driver)
    x1 = x * 0.2
    y1 = y * 0.5
    x2 = x * 0.8
    for i in range(n):
        driver.swipe(x1, y1, x2, y1, t)

原文地址:https://www.cnblogs.com/pythonywy/p/12627021.html

时间: 2024-10-02 07:31:31

appnium实现向上滑动,向下滑动,向左滑动,向右滑动的相关文章

Winform 无法监听方向键(向上,向下,向左,向右)

winform 时候我们经常出来keydown,keypress,keyup事件, 他们执行顺序是先keydown,然后keypress,最后keyup, 通常我们没有考虑区别,刚刚接触可能一个keypress就搞定一切, 但是当你想监听方向键和一些其他键时候发现keypress不好用了,对的! keypress的确不可以监听方向键,这时候我们就需要使用keydown来完成想要的操作! 当我们使用keydown之前我们不要忘记还有一个很重要的设置就是 form 的一个属性----keyprevi

Android LRecyclerView 操作案例分享-实现下拉刷新、滑动到底部自动加载

一直想抽空写下这个开源项目,但是各种原因没有抽时间,今天还是趁着工作间隙写下了这篇博客,与大家分享. 简介 LRecyclerView是支持addHeaderView. addFooterView.下拉刷新.分页加载数据的RecyclerView. 它对 RecyclerView 控件进行了拓展,给RecyclerView增加HeaderView.FooterView,并且不需要对你的Adapter做任何修改. 主要功能 下拉刷新.滑动到底部自动加载下页数据: 可以方便添加Header和Foot

android 下拉刷新上拉加载更多,高仿ios左滑动删除item,解决了众多手势问题

一.前言 老规矩,别的不说,这demo是找了很相关知识集合而成的,可以说对我这种小白来说是绞尽脑汁!程序员讲的是无图无真相!现在大家一睹为快! 二.比较关键的还是scroller这个类的 package com.icq.slideview.view; import android.content.Context; import android.util.AttributeSet; import android.util.Log; import android.util.TypedValue; i

厦门海关贸易通APP新闻滑动tab下拉刷新bug解决

在厦门海关贸易贸易通APP一期接近收尾阶段,发现一个bug:滑动tab下拉刷新页面,当新闻listView滑下来时,再往下滑,无法上滑,而是直接刷新的bug,如下图. 解决: 在adapter.activity.fragment三个文件多处打log后将问题锁定在 ViewPagerFragment 中的checkCanDoRefresh()的最后return返回值始终为true.针对性打log发现getFirstVIsiblposition和getChildAt(0).getTop(),这个两个

Android仿qq下拉刷新及向左滑动列表----PullToRefresh, SwipeMenuListView开源项目整合

Github链接:https://github.com/licaomeng/Android-PullToRefresh-SwipeMenuListView-Sample PullToRefresh是一个非常完美的下拉刷新的开源项目,SwipeMenuListView是一个向左滑动ListView中item实现可以删除功能的开源项目.笔者在此将两套开源项目整合形成一套,类似于手机qq那样同时支持下拉刷新和向左滑动的列表.效果如下: 版权声明:本文为博主原创文章,未经博主允许不得转载.

ios 下防止整个网页滑动(阻尼回弹 . 瞒天过海,骗IOS,把阻尼回弹限制在滚动区div内

下面是一个手机APP页面,分成上中下三部分,最上面和最下面是固定的,中间可以滚动.这是常见的APP布局方式. <style> .box{ overflow: auto; -webkit-overflow-scrolling: touch; /*使得div内的超出滑动具有惯性,阻尼回弹等特性,否则滑动很生涩*/ } </style> </head> <body class="box" > <div id="top"

Android - ListView 滑动载入下页数据 Scroll设定

Android - ListView 下滑载入新数据 遇到问题,过去的下滑载入功能很差,不知道原因. 试了半天终于试出来了. 觉得这个方法比较符合使用者体验的感觉, 不会感觉上视觉有跳动的感觉,而是很直直的载入,很顺. 以下是我设定的onScrollListener private OnScrollListener scrollListener = new OnScrollListener() { @Override public void onScroll(AbsListView view,

js移动端向左滑动出现删除按钮

最近在做移动端项目时,需要实现一个列表页面的每一项item向左滑动时出现相应的删除按钮,本来想着直接使用zepto的touch.js插件,因为之前实现相同的功能时用过这个插件,当时还挺好用的,直接使用它的swipeLeft和swipeRight方法即可,可是今天又开始做这个功能时,却发现这两个方法在使用时毫无效果,一点反应都没有.上网查资料,又下载了最新版本的zepto和touch.js,都没有用,也不知为什么?所以就弃用了这个插件.下面是我后来实现后的代码,其实就是用了原生js的touch事件

自定义UITableViewCell实现左滑动多菜单功能LeftSwipe

今天愚人节,小伙们,愚人节快乐! 实现一个小功能,滑动菜单,显示隐藏的功能菜单, 先上图:                       这里尝试用了下使用三个方式来实现了这个功能: 1.使用自定义UITableViewCell + UISwipeGestureRecognizer + 代理 实现: 2.使用自定义UITableViewCell + UIPanGestureRecognizer + 代理 实现: 3.使用自定义UITableViewCell + UISwipeGestureReco