appium定位方法

本文详细介绍了Appium在Android自动化测试中如何通过id、class和xpath进行元素定位,以及使用显示等待、滑动、拖拽等事件。同时,讲解了获取元素内容、属性值和屏幕坐标的方法,并展示了TouchAction类的手势操作如tap、press和long_press。这些技巧对于进行高效、精准的移动应用自动化测试至关重要。
摘要由CSDN通过智能技术生成

定位元素的方法

id

# id_value:为元素的id属性值
driver.find_element_by_id(id_value)

在这里插入图片描述

class

# class_value:为元素的class属性值
方法:find_element_by_class_name(class_value) 

在这里插入图片描述

xpath

find_element_by_xpath(xpath_value) # xpath_value:为可以定位到元素的xpath语句
 *** android端xptah常用属性定位:
      1. id ://*[contains(@resource-id,'com.android.settings:id/search')] 
      2. class ://*[contains(@class,'android.widget.ImageButton')]
      3. text ://*[contains(@text,'WLA')]
  *** 模糊定位 contains(@key,value): value可以是部分值

在这里插入图片描述

显示等待操作

from selenium.webdriver.support.wait import WebDriverWait
WebDriverWait(driver, timeout, poll_frequency).until(method)
参数:
     1.driver:手机驱动对象
     2.timeout:搜索超时时间
     3.poll_frequency:每次搜索间隔时间,默认时间为0.5s
     4.method:定位方法(匿名函数)

在这里插入图片描述

获取元素的方式

text 获取元素的内容

在这里插入图片描述

get_attribute() 获取元素属性值

在这里插入图片描述

location 获取元素在屏幕上的坐标

在这里插入图片描述
在这里插入图片描述

获取包名方法:current_package,获取启动名:current_activity

在这里插入图片描述

事件

swipe 滑动事件

在这里插入图片描述

1.start_x:起点X轴坐标
2.start_y:起点Y轴坐标
3.end_x: 终点X轴坐标
4.end_y,: 终点Y轴坐标
5.duration: 滑动这个操作一共持续的时间长度,单位:ms

scroll滑动事件

从一个元素滑动到另一个元素,直到页面自动停止
方法:scroll(origin_el, destination_el)
参数:
1.origin_el:滑动开始的元素
2.destination_el:滑动结束的元素

在这里插入图片描述

drag拖拽事件

从一个元素滑动到另一个元素,第二个元素替代第一个元素原本屏幕上的位置
方法:drag_and_drop(origin_el, destination_el)
参数:
1.origin_el:滑动开始的元素
2.destination_el:滑动结束的元素

在这里插入图片描述

background_app() 应用置于后台事件

APP放置后台,模拟热启动
方法:background_app(seconds)
seconds:停留在后台的时间,单位:秒

TouchAction手势操作()

TouchAction是AppiumDriver的辅助类,主要针对手势操作,比如滑动、长按、拖动等,

from appium.webdriver.common.touch_action import TouchAction

tap 模拟手指轻敲一下屏幕操作

模拟手指轻敲一下屏幕操作
方法:tap(element=None, x=None, y=None)
方法:perform() # 发送命令到服务器执行操作
参数:
1.element:被定位到的元素
2.x:相对于元素左上角的坐标,通常会使用元素的X轴坐标
3.y:通常会使用元素的Y轴坐标

在这里插入图片描述

press 手指按操作

方法:press(el=None, x=None, y=None)
方法:release() # 结束动作,手指离开屏幕
参数:
1.element:被定位到的元素
2.x:通常会使用元素的X轴坐标
3.y:通常会使用元素的Y轴坐标
在这里插入图片描述

wait等待操作

方法:wait(ms=0)
参数:
ms:暂停的毫秒数
在这里插入图片描述

long_press() 手指长按操作 方法:

long_press(el=None, x=None, y=None, duration=1000)
参数:
1.element:被定位到的元素
2.x:通常会使用元素的X轴坐标
3.y:通常会使用元素的Y轴坐标
4.duration:持续时间,默认为1000ms

在这里插入图片描述

move_to()手指移动操作

方法:move_to(el=None, x=None, y=None)
参数:
1.el:定位的元素
2.x:相对于前一个元素的X轴偏移量
3.y:相对于前一个元素的Y轴偏移量

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值