Appium定位元素方法


根據ID

在安卓應用自動化的時候,如果能根據ID選擇定位元素,最后根據ID,

英文一般來說ID是唯一的,所有根據ID選擇效率高,

但是ID,是安卓應用元素的resource-id屬性

使用代碼如下:

driver.find_element_by_id('expand_serach')

 

根據ClASS NAME

安卓界面元素的屬性 其實就是根據元素的類型 類似web里面的tagname、所以通常不是唯一的

通常、我們根據class屬性來選擇元素、是要選擇多個而不是一個。

如果確定要找的界面元素的類型在當前頁面中只有一個、就可以根據class來唯一選擇

使用代碼如下:

deiver.find_elements_by_class_name('android.widget.TextView')

由圖看出搜索出的元素id相同,但是也有相同的class 這個時候我們可以根據find_elements_by_class_name 一起定位

 

 

 

根據ACCESSIBLITY ID

元素的 content-desc屬性是用來描述該元素的作用的

如果要查詢的界面有 content-desc屬性,為我們可以通過它來定位選擇元素

使用代碼如下

driver.find_element_by_accessibility_id('搜索查詢')

直接搜索 元素的描述

 

 

Xpath

Appium 也支持 Xpath選擇元素

但是其可靠性和性能不如 Selenium Web自動化, 因為Web自動化對Xpath的支持是由瀏覽器實現的,而Appium Xpath的支持是Appium Server 實現的

畢竟,瀏覽器產品的成熟度對比Appium要高很多

當然、Xpath是標准語法,所以這里表達式的語法規則和Selenium里面的Xpath的語法

是一樣的,

使用代碼如下:

driver.find_element_by_xpath('//ele/ele2[@attr="value"]')

也可利用放大鏡xpath定位元素

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM