日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

APP元素定位操作API

發布時間:2025/3/20 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 APP元素定位操作API 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1.Appium常用元素定位方式

namevalue
idid屬性值
classclass屬性值
xpathxpath表達式

2.前置代碼

from appium import webdriver# 啟動參數 caps = {} # 設備信息 caps["platformName"] = "Android" caps["deviceName"] = "127.0.0.1:62001" # app信息 caps["appPackage"] = "com.android.settings" caps["appActivity"] = "com.android.settings.Settings" # 聲明我們的driver對象 driver = webdriver.Remote("http://localhost:4723/wd/hub", caps)

3.通過id定位

方法:find_element_by_id(id_value) # id_value:為元素的id屬性值
業務場景:
1.進入設置頁面
2.通過ID定位方式點擊搜索按鈕

代碼展示:

4.通過class定位

方法:find_element_by_class_name(class_value) # class_value:為元素的class屬性值
業務場景:
1.進入設置頁面
2.點擊搜索按鈕
3.通過class定位方式點擊輸入框的返回按鈕

代碼展示:

5.通過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可以是部分值

1.進入設置頁面
2.點擊WLAN菜單欄

代碼展示

6.定位一組元素,注意element -> elements

應用場景為元素值重復,無法通過元素屬性直接定位到某個元素,只能通過elements方式來選擇,返回一個定位對象的列表.

方法: find_elements_by_id(id_value) # id_value:為元素的id屬性值
業務場景:
1.進入設置頁面
2.點擊WLAN菜單欄(id定位對象列表中第1個)


7.WebDriverWait 顯示等待操作

在一個超時時間范圍內,每隔一段時間去搜索一次元素是否存在,如果存在返回定位對象,如果不存在直到超時時間到達,報超時異常錯誤。

方法:WebDriverWait(driver, timeout, poll_frequency).until(method)
參數:
1.driver:手機驅動對象
2.timeout:搜索超時時間
3.poll_frequency:每次搜索間隔時間,默認時間為0.5s
4.method:定位方法(匿名函數)

匿名函數: lambda x: x等價于python函數:def test(x):return x

使用示例:
WebDriverWait(driver, timeout, poll_frequency).until(lambda x: x.find_elements_by_id(id_value))
解釋:
1.x傳入值為:driver,所以才可以使用定位方法.
函數運行過程:
1.實例化WebDriverWait類,傳入driver對象,之后driver對象被賦值給WebDriverWait的一個類變量:self._driver
2.until為WebDriverWait類的方法,until傳入method方法(即匿名函數),之后method方法會被傳入self._driver
3.搜索到元素后until返回定位對象,沒有搜索到函數until返回超時異常錯誤.

業務場景:
1.進入設置頁面
2.通過ID定位方式點擊搜索按鈕

代碼展示:

總結

以上是生活随笔為你收集整理的APP元素定位操作API的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。