99热热热_国产成人自拍一区_欧美一级网站_99热在线播放_国产精品乱码一区二区三区_久久精品国产一区二区三区

訂閱本欄目 RSS您所在的位置: 深山工作室 > python > 正文

Appium元素定位方式之android_uiautomator定位

2022/9/23 17:04:58 字體: 瀏覽 1522

1. android_uiautomator定位
  相當于使用 UiAutomator Api 去遞歸地搜索元素(Android 專屬),可以說android uiautomator是終極定位方式,有的時候一些元素不能夠很好的定位時,那么就需要采用android uiautomator去定位,他是一種非常強有力的定位方式,原理是通過android 自帶的android uiautomator的類庫去查找元素。appium對android 的uiautomator進行了封裝,該方法的參數為UiSelector類定位元素的表達式:new UiSelector().屬性('屬性值'),實例化一個UiSelector對象,然后通過實例接口調用。
  AndroidUIAutomator是一個強有力的元素定位方式,它是通過Android UIAutomator類庫去找元素,可以選擇resourceId、text、className、description作為傳入的字符串。

1.1 android_uiautomator之text文本定位語法
  1) 使用text文本定義
    loc_text = 'new UiSelector().text("登錄/注冊")'
   driver.find_element_by_android_uiautomator(loc_text).click()
  2) uiautomator text模糊定位
    文本比較長的時候,可以用textContains模糊匹配,通過text的部分信息就能夠進行定位,我們直接看代碼:
    loc_text = 'new UiSelector().textContains("登錄/注冊")'
   driver.find_element_by_android_uiautomator(loc_text).click()
   在上面的代碼中我們只是將.text()的方法變成了.textContains(),在方法中傳入模糊的數據就好??吹竭@里是否有人思考過一個問題,既然有類似的模糊尋找,那么有沒有像正則表達式一樣的查找呢?答案是肯定的,看我們下面的方法。

  3) textMatches 正則匹配查找
textMatches故名思義就是通過正則的來進行查找定位,也是通過text的屬性來進行正則匹配,我們直接看代碼:
   loc_text = 'new UiSelector().textMatches("^登錄/.*")'
   driver.find_element_by_android_uiautomator(loc_text).click()
  4) textStartsWith是以某個文本開頭來匹配
    new UiSelector().textStartsWith("以text文本開頭")
    loc_text = 'new UiSelector().textStartsWith("登錄")'
    driver.find_element_by_android_uiautomator(loc_text).click()

1.2 android_uiautomator之resourceId定位
resourceId定位和appium封裝好的id定位是一樣的,只是這里將寫法變成了uiautomator的寫法而已。

1) resourceId定位
    oc_id = 'new UiSelector().resourceId(" com.wm.dmall:id/net_image_view ")'
    driver.find_element_by_android_uiautomator(loc_id).click()
    通過上面的代碼和之前的代碼對比大家可能發現其實他們前面都是一樣的,只是在定位的時候發生了一些變化,text變換成了resourceId即可,也就是頁面對象屬性的信息進行變更了,其他方法都是一樣。
2) resourceIDMatches 定位
通過id進行正則匹配定位
    loc_id = 'new UiSelector().resourceIdMatches(".+net_image_view ")'
    driver.find_element_by_android_uiautomator(loc_id).click()
    1.3 android_uiautomator之className定位
    頁面上的class屬性一般不唯一,多半用在復數定位時候。比如通過class屬性定位'同意'這個按鈕下標就是1。

1) className定位
# className復數定位
loc_class = 'new UiSelector().className("android.widget.TextView")'
driver.find_elements_by_android_uiautomator(loc_class)[1].click()

20 uiautomator classNameMatches定位
通過className正則匹配進行定位:

loc_class = 'new UiSelector().classNameMatches (".*widget.TextView")'
driver.find_elements_by_android_uiautomator(loc_class)[1].click()
1.4 android_uiautomator之description定位


loc_id = 'new UiSelector().
description("多點")'
driver.find_element_by_android_uiautomator(loc_id).click()
1.5 android_uiautomator之組合定位

1)id與text屬性組合
id_text = 'resourceId("com.wm.dmall:id/funcTitle").text("待支付")'
driver.find_element_by_android_uiautomator(id_text).click()
2)class與text屬性組合
class_text = 'className("android.widget.TextView").text("待支付")'
driver.find_element_by_android_uiautomator(class_text).click()
3)父子關系定位
son = 'resourceId("com.wm.dmall:id/container").childSelector(text("我的"))'
driver.find_element_by_android_uiautomator(son).click()
4)兄弟定位fromParent
有時候父元素不好定位,但是跟他相鄰的兄弟元素很好定位,這時候就可以通過兄弟元素,找到同一父級元素下的子元素。

brother = 'resourceId("com.wm.dmall:id/nav_item_laber_tv").fromParent(text("我的"))'
driver.find_element_by_android_uiautomator(brother).click()

信息來源網址:https://www.cnblogs.com/dy99/p/14287543.html

相關閱讀
符合標準的正常工作的對聯廣告(2)
旅游網站的企業站自定義功能完成。
設為首頁代碼
uni-app:使用uni.downloadFile下載word或pdf文件并保存到手機
Word圖片導出方法
百度蜘蛛飼養技巧
ASP留言板IP或IP段限制與限制留言次數
ios蘋果版手機微信內置瀏覽器$(document).on(
共有0條關于《Appium元素定位方式之android_uiautomator定位》的評論
發表評論
正在加載評論......
返回頂部發表評論
呢 稱:
表 情:
內 容:
評論內容:不能超過 1000 字,需審核,請自覺遵守互聯網相關政策法規。
驗證碼: 驗證碼 
網友評論聲明,請自覺遵守互聯網相關政策法規。

您發布的評論即表示同意遵守以下條款:
一、不得利用本站危害國家安全、泄露國家秘密,不得侵犯國家、社會、集體和公民的合法權益;
二、不得發布國家法律、法規明令禁止的內容;互相尊重,對自己在本站的言論和行為負責;
三、本站對您所發布內容擁有處置權。

更多信息>>欄目類別選擇
百度小程序開發
微信小程序開發
微信公眾號開發
uni-app
asp函數庫
ASP
DIV+CSS
HTML
python
更多>>同類信息
Android移動端自動化測試:使用UIAutomatorViewer與Selenium定位元素
python通過代碼修改pip下載源讓下載庫飛起
python里面requests.post返回的res.text還有其它的嗎
windows7環境下安裝配置jdk
python對微信操作要用到這兩個庫wxpy與itchat
8種Python字符串拼接的方法,你知道幾種
更多>>最新添加文章
dw里面查找替換使用正則刪除sqlserver里面的CONSTRAINT
Android移動端自動化測試:使用UIAutomatorViewer與Selenium定位元素
抖音直播音掛載小雪花 懂車帝小程序
javascript獲取瀏覽器指紋可以用來做投票
火狐Mozilla Firefox出現:無法載入您的Firefox配置文件 它可能已經丟失 或是無法訪問 問題解決集合處理辦法
在Android、iOS、Windows、MacOS中微信小程序的文件存放路徑
python通過代碼修改pip下載源讓下載庫飛起
python里面requests.post返回的res.text還有其它的嗎
更多>>隨機抽取信息
div+css標準化在新窗口打開鏈接
國內組團社旅游服務商建站解決方案
jquery中動態生成的代碼使用on hover事件時不出現效果
CSS中word-wrap屬性同word-break屬性的兩者在中英文混排時的區別
dreawmeaver中鮮為人知的小秘訣,讓你制作網頁更加隨心所欲.
酷在旅途
99热热热_国产成人自拍一区_欧美一级网站_99热在线播放_国产精品乱码一区二区三区_久久精品国产一区二区三区
  • <li id="6qmi0"></li>
  • <li id="6qmi0"><source id="6qmi0"></source></li>
    欧美一区=区| 久久综合一区| 99在线精品视频在线观看| 99国产精品久久久久久久| 久久av在线| 精品一区2区三区| 中国人体摄影一区二区三区| 极品裸体白嫩激情啪啪国产精品| 一区二区三区av| 国产视频精品网| 在线天堂一区av电影| 亚洲每日更新| 久久99久久精品国产| 欧美日韩一区二区三区在线视频| 一本色道精品久久一区二区三区| 国产精品入口免费| 一区二区三区精品国产| 亚洲一区二区三区四区中文 | 欧美日韩亚洲一区二区三区四区| 亚洲精品综合| 久久国产日韩欧美| 黄色欧美成人| 国产精品乱码| 亚洲一级二级| 久久久久se| 国产精品国产三级欧美二区| 久久久精品五月天| 一级做a爰片久久| 久久精品二区| 亚洲国产一区二区三区在线播| 亚洲精品护士| 视频一区视频二区视频三区高| 亚洲激情不卡| 三区精品视频| 久久精品中文| 欧美日韩综合另类| 久久99精品久久久久久青青日本 | 一区二区不卡在线观看| 嫩草成人www欧美| 亚洲高清视频在线观看| 久久国产手机看片| 欧美日韩网站| 日韩精品极品视频在线观看免费| 一本色道久久综合亚洲精品不 | 国产精品播放| 欧美精品二区三区四区免费看视频| 欧美日韩系列| 欧美主播一区二区三区美女 久久精品人 | 国产伦精品一区二区三区高清版 | 成人9ⅰ免费影视网站| 欧美精品成人| 久久影视中文粉嫩av| 午夜亚洲视频| 一本色道久久| 欧美天堂亚洲电影院在线观看| 久久精品日产第一区二区三区精品版| 在线观看日韩av电影| 亚洲春色综合另类校园电影| 国产精品久久久久久久久久久久冷 | 伊人av成人| 欧美lavv| 国产精品视频福利| 7777奇米亚洲综合久久| 亚洲黄色大片| 欧美日韩精品不卡| 日韩欧美亚洲日产国| 国产成人精品一区二区三区福利 | 亚洲国产精品久久久久婷婷老年 | 国严精品久久久久久亚洲影视| 西西人体一区二区| 一本久久知道综合久久| 亚洲午夜91| 欧美日韩国产综合在线| 亚洲一区二区自拍偷拍| 日本一区二区三区四区在线观看 | 老鸭窝91久久精品色噜噜导演| 在线国产日韩| 国内综合精品午夜久久资源| 亚洲一区三区视频在线观看| 日日夜夜精品网站| 日本高清不卡三区| 日本成人三级电影网站| 欧美高清视频一区| 欧美亚洲一级二级| 欧美亚洲另类在线一区二区三区| 国产在线精品一区二区三区| 岛国视频一区| 精品国产一区二区三区久久久久久| 国产 高清 精品 在线 a| 99在线高清视频在线播放| 99国产在线| 国产欧美日韩伦理| 精品午夜一区二区三区| 欧美日韩国产不卡在线看| 九九九久久久| 亚洲aⅴ天堂av在线电影软件| 日韩影院一区| 欧美久久久久| 一区二区欧美日韩| 裸体一区二区| 精品国产免费一区二区三区| 久久久亚洲综合网站| 色综合666| 国模精品娜娜一二三区| 99精品国产高清一区二区| 久久av一区二区三区| 国产精品二区在线观看| 欧洲精品久久| 国产精品www.| 久久精品一区二区三区中文字幕| 国产精品一区视频网站| 欧美精品一区二区视频 | 亚洲午夜精品一区二区| 国产精品红桃| 久久一区国产| 日韩精品一区二区三区丰满| 欧美日韩国产高清| 久久久天天操| 日本一区二区在线视频| 欧美大片一区| 噜噜噜在线观看免费视频日韩| 国外成人免费视频| 欧美xxx在线观看| 美女精品在线| 日韩欧美三级一区二区| 亚洲美女啪啪| 久久精品国产精品青草色艺| 欧美激情第8页| 91青青草免费在线看| 日本日本精品二区免费| 日韩视频久久| 久久久久久高清| 亚洲韩日在线| 欧美成ee人免费视频| 亚洲激情不卡| 欧美日韩精品一区| 亚洲精品一区二区三区蜜桃久| 精品欧美一区二区久久久伦| 欧美日韩国产高清视频| 国产精品入口免费| 亚洲国产三级| 日本欧美色综合网站免费| 99在线观看免费视频精品观看| 免费在线成人av| 免费在线成人| 在线一区高清| 久久久7777| 免费一区视频| 狠狠色伊人亚洲综合网站色 | 免费国产一区二区| 亚洲一区日韩在线| 中文字幕av日韩精品| 国产区二精品视| 国产精品日韩| 午夜精品网站| 日韩亚洲视频| 国产精品一区二区三区不卡| 亚洲国产精品第一区二区| 日本午夜精品电影| 成人自拍爱视频| 亚洲少妇在线| 国产中文一区二区| 日韩久久在线| 精品日本一区二区三区在线观看| 中国成人在线视频| 欧美日韩mv| 亚洲一区二区三区乱码| 精品久久久久久综合日本 | 久久字幕精品一区| 亚洲毛片网站| 黑人一区二区三区四区五区| 日韩美女一区| 精品日韩欧美| 精品不卡在线| 国产69精品久久久久9999apgf| 国产一区二区高清不卡| 亚洲一级一区| 中文字幕一区综合| 亚洲欧美日韩精品在线| 美媛馆国产精品一区二区| 国产传媒欧美日韩| 99久久久精品免费观看国产| 亚洲免费婷婷| 亚洲专区欧美专区| 国产麻豆日韩| 免播放器亚洲| 久久av免费一区| 亚洲尤物精选| 久久亚洲电影| 99视频在线播放| 国产精品yjizz| 国产区欧美区日韩区| 国产亚洲欧美一区二区三区| 国产精品美女诱惑| 激情小说网站亚洲综合网| 精品午夜一区二区| 视频一区视频二区视频| 欧美一区二区三区四区在线观看地址| 日韩激情视频| 欧美精品成人一区二区在线观看|