【appuim】21、定位一组元素
1、应用场景
- 和定位元素相同,但如果想要批量的获取某个相同特征的元素,使用定位一组元素的方式更加方便。
2、方法名
# 通过id定位一组元素
# 参数:
# id_value:元素的resource-id属性值
# 返回值:
# 列表,定位到的所有符合调价你的元素
driver.find_elements_by_id(id_value)# 通过class_name定位一组元素
# 参数:
# class_value:元素的class属性值
# 返回值:
# 列表,定位到的所有符合调价你的元素
driver.find_elements_by_class_name(class_value)# 通过xpath定位一组元素
# 参数:
# xpath_value:定位元素的xpath表达式
# 返回值:
# 列表,定位到的所有符合调价你的元素
driver.find_elements_by_xpath(xpath_value)3、示例
- 通过id的形式,获取所有resource-id为"com.android.settings:id/title"的元素,并打印其文字内容
- 通过class_name的形式,获取所有class为"android.widget.TextView"的元素,并打印其文字内容
- 通过xpath的形式,获取所有包含"设"的元素,并打印其文字内容
from appium import webdriver
desired_caps = dict()
desired_caps['platformName'] = 'Android'
desired_caps['platformVersion'] = '7'
desired_caps['deviceName'] = '192.168.101.55:5555'
# 手机参数
desired_caps['appPackage'] = 'com.android.settings'
desired_caps['appActivity'] = '.Settings'
driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps)
elements = driver.find_elements_by_id('android:id/title')
class_elements = driver.find_elements_by_class_name('android.widget.TextView')
# 包含设
xpath_elements = driver.find_elements_by_xpath('//*[contains(@text, "设")]')
# 打印文字内容
# print(elements)
for _ in xpath_elements:
print(_.text)
# 找到某个元素,点击
# class_elements[5].click()本文来自博客园,作者:郭祺迦,转载请注明原文链接:https://www.cnblogs.com/guojie-guojie/p/16329386.html

浙公网安备 33010602011771号