Appium五 选择页面元素的方法

方法一: find_element_by  id、class、xpath 

选择页面底部的“发现”元素方式

 

1. 根据ID属性         没有唯一的id

2. 根据class属性    没有唯一的class

3. 根据Xpath 

xpath ="//*[@resouce-id='io.manong.developerdaily:id/tab_bar']//android.widget.TextView"

eles = driver.find_elements_by_xpath(xpath)

for ele in eles:

    print(ele.text)

ele[2].click()

  或者

xpath ="//*[@resouce-id='io.manong.developerdaily:id/tab_bar']//android.widget.TextView[@text='发现']"

ele = driver.find_element_by_xpath(xpath)

ele.click()

 

方法二  tap坐标

 针对页面坐标,难以用通常的方法定位元素的时候使用

使用uiautomatorviewer定位元素时,右上角会出现该元素的坐标

代码 

driver.tap([200,400],300)
#[200,400] 代表元素的X坐标,Y坐标
# 300 代表点击时间的长度,单位毫秒,控制点击或长按

优点,操作简便

缺点,每个手机的分辨率不一样

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Appium 是一个开源的自动化测试工具,用于移动应用的UI测试,它支持多种平台和多种编程语言,包括 Java。在 Appium 中,定位元素是测试脚本的核心部分,Java API 提供了多种方法来查找 UI 元素。以下是一些常见的元素定位方法: 1. By.id (根据ID定位):这是最常用的定位方式,通过元素的唯一 ID 来找到元素。 ```java WebElement element = driver.findElement(By.id("your_element_id")); ``` 2. By.name (根据名称定位):如果元素的name属性是唯一的,可以使用此方法。 ```java WebElement element = driver.findElement(By.name("element_name")); ``` 3. By.className (根据class名称定位):定位具有特定CSS类名的元素。 ```java WebElement element = driver.findElement(By.className("your_class_name")); ``` 4. By.tagName (根据标签名定位):如定位所有的`<div>`元素。 ```java List<WebElement> elements = driver.findElements(By.tagName("div")); ``` 5. By.xpath (根据XPath表达式定位):提供强大的路径选择能力,适用于复杂结构的页面。 ```java WebElement element = driver.findElement(By.xpath("//element[@attribute='value']")); ``` 6. By.linkText (根据链接文字定位):找到匹配链接文本的元素。 ```java WebElement element = driver.findElement(By.linkText("link_text")); ``` 7. By.partialLinkText (根据链接文本的部分匹配):对链接文本进行模糊匹配。 每个定位器的使用取决于实际的UI元素结构,可能需要尝试多种方法才能找到正确的元素。定位元素后,可以执行点击、输入等操作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值