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

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

Android移動(dòng)端自動(dòng)化測(cè)試:使用UIAutomatorViewer與Selenium定位元素

2024/9/18 14:33:40 字體: 瀏覽 650

APP移動(dòng)端自動(dòng)化測(cè)試】第三節(jié).UIAutomatorViewer元素定位API操作

(1)應(yīng)用場(chǎng)景
定位元素的時(shí)候必須根據(jù)元素的相關(guān)特征來(lái)進(jìn)行定位,而UIAutomatorViewer就是用來(lái)獲取元素特征的。
(2)簡(jiǎn)介
UlAutomatorViewer用來(lái)掃描和分析Android應(yīng)用程序的UI控件的工具。
(3)使用步驟
1.進(jìn)入SDK目錄下的目錄
mac在tools/bin目錄下,打開(kāi)uiautomatorviewero
windows在 tools目錄下,打開(kāi)uiautomatorviewer.bat
2.電腦連接真機(jī)或打開(kāi)android模擬器
3.啟動(dòng)待測(cè)試app
4.點(diǎn)擊uiautomatorviewer的左上角Device Screenshot (從左數(shù)第二個(gè)按鈕)
5.點(diǎn)擊希望查看的控件
6.查看右下角Node Detail相關(guān)信息
(4)示例
查看《設(shè)置》應(yīng)用程序右上角"放大鏡”按鈕的"resource-id".
    實(shí)現(xiàn)步驟:
    1.打開(kāi)uiautomatorviewer
    2.打開(kāi)android模擬器
    3.啟動(dòng)《設(shè)置》應(yīng)用程序
    4.點(diǎn)擊Device Screenshot按鈕
    5.點(diǎn)擊"放大鏡”按鈕
    6.查看Node Detail中的"resource-id”信息

    注意點(diǎn):
    uiautomatorviewer注意點(diǎn)
    1.命令行窗口不要關(guān)閉
    2.如果uiautomatorviewer 閃退
          更換jdk為1.8
    3.點(diǎn)擊第二個(gè)按鈕的時(shí)候報(bào)錯(cuò)
          重啟adb
              adb kill-server
              adb start-server


## Selenium元素定位
Selenium是一個(gè)強(qiáng)大的Web應(yīng)用程序測(cè)試工具,也支持Android原生應(yīng)用測(cè)試。通過(guò)Selenium,我們可以根據(jù)不同的屬性來(lái)定位頁(yè)面上的元素,比如ID、類名和XPath表達(dá)式等。

### 單個(gè)元素定位
#通過(guò)id定位一個(gè)元素
  driver.find_element_by_id('id_value').click()
 
#通過(guò)class_name定位一個(gè)元素
  driver.find_element_by_class_name('class_value').send_keys('hello')
 
#通過(guò)xpath定位一個(gè)元素
  driver.find_element_by_xpath('//[@content-desc="收起"]').click()

其它示例
1.driver.find_element_by_id("com.android.settings:id/search").click()
2.driver.find_element_by_class_name(" android.widget.EditText").send_keys( "hello")
3.driver.find_element_by_xpath(" / /*[@content-desc='收起"]").click()
總結(jié):
1. find_element_by_id方法中傳入的是Node Detail信息中的resource-id
2. find_element_by_class_name方法中傳入的是 Node Detail 信息中的class
3. find element bv xpath方法中傳入的是Node Detail信息中的xpath表達(dá)式


### 一組元素定位
當(dāng)需要定位多個(gè)具有相同特征的元素時(shí),可以使用以下方法:
- **通過(guò)ID定位多元素**:
  titles = driver.find_elements_by_id('com.android.settings:id/title')
  for title in titles:
      print(title.text)
     
- **通過(guò)Class Name定位多元素**:
  text_views = driver.find_elements_by_class_name('android.widget.TextView')
  for text_view in text_views:
      print(text_view.text)
     
- **通過(guò)XPath定位多元素**:
  elements = driver.find_elements_by_xpath("http://*[contains(@text, '設(shè)')]")
  for element in elements:
      print(element.text)
     
### 元素等待
由于網(wǎng)絡(luò)延遲等因素,有時(shí)頁(yè)面元素不會(huì)立即加載完畢。為此,Selenium提供了兩種等待機(jī)制——隱式等待和顯式等待,以避免因元素未加載完成而導(dǎo)致的腳本失敗。

- **隱式等待**:設(shè)置一個(gè)全局超時(shí)時(shí)間,在此時(shí)間內(nèi)如果找不到元素,則拋出異常。
  driver.implicitly_wait(10)  # 等待10秒
 
- **顯式等待**:針對(duì)特定條件設(shè)置更精確的等待時(shí)間,超過(guò)指定時(shí)間后拋出異常。
  from selenium.webdriver.support.ui import WebDriverWait
  wait = WebDriverWait(driver, 10)
  search_button = wait.until(lambda x: x.find_element_by_xpath("http://*[contains(@content-desc, '收起')]"))
  search_button.click()

前一頁(yè):沒(méi)有了
相關(guān)閱讀
asp漢字轉(zhuǎn)換為拼音
鹽城市開(kāi)心假日旅行社有限公司
根據(jù)頁(yè)面模板動(dòng)態(tài)生成html頁(yè)面
微信公眾號(hào)回復(fù)語(yǔ)音消息或用客服接口推送語(yǔ)音消息
舞陽(yáng)風(fēng)情旅行社
ewebeditor 刪除信息時(shí)同時(shí)刪除相關(guān)上傳文件
FlashFxp修改FTP密碼
松原市海航商務(wù)旅行社
共有0條關(guān)于《Android移動(dòng)端自動(dòng)化測(cè)試:使用UIAutomatorViewer與Selenium定位元素》的評(píng)論
發(fā)表評(píng)論
正在加載評(píng)論......
返回頂部發(fā)表評(píng)論
呢 稱:
表 情:
內(nèi) 容:
評(píng)論內(nèi)容:不能超過(guò) 1000 字,需審核,請(qǐng)自覺(jué)遵守互聯(lián)網(wǎng)相關(guān)政策法規(guī)。
驗(yàn)證碼: 驗(yàn)證碼 
網(wǎng)友評(píng)論聲明,請(qǐng)自覺(jué)遵守互聯(lián)網(wǎng)相關(guān)政策法規(guī)。

您發(fā)布的評(píng)論即表示同意遵守以下條款:
一、不得利用本站危害國(guó)家安全、泄露國(guó)家秘密,不得侵犯國(guó)家、社會(huì)、集體和公民的合法權(quán)益;
二、不得發(fā)布國(guó)家法律、法規(guī)明令禁止的內(nèi)容;互相尊重,對(duì)自己在本站的言論和行為負(fù)責(zé);
三、本站對(duì)您所發(fā)布內(nèi)容擁有處置權(quán)。

更多信息>>欄目類別選擇
百度小程序開(kāi)發(fā)
微信小程序開(kāi)發(fā)
微信公眾號(hào)開(kāi)發(fā)
uni-app
asp函數(shù)庫(kù)
ASP
DIV+CSS
HTML
python
更多>>同類信息
Android移動(dòng)端自動(dòng)化測(cè)試:使用UIAutomatorViewer與Selenium定位元素
python通過(guò)代碼修改pip下載源讓下載庫(kù)飛起
python里面requests.post返回的res.text還有其它的嗎
windows7環(huán)境下安裝配置jdk
python對(duì)微信操作要用到這兩個(gè)庫(kù)wxpy與itchat
8種Python字符串拼接的方法,你知道幾種
更多>>最新添加文章
dw里面查找替換使用正則刪除sqlserver里面的CONSTRAINT
Android移動(dòng)端自動(dòng)化測(cè)試:使用UIAutomatorViewer與Selenium定位元素
抖音直播音掛載小雪花 懂車帝小程序
javascript獲取瀏覽器指紋可以用來(lái)做投票
火狐Mozilla Firefox出現(xiàn):無(wú)法載入您的Firefox配置文件 它可能已經(jīng)丟失 或是無(wú)法訪問(wèn) 問(wèn)題解決集合處理辦法
在Android、iOS、Windows、MacOS中微信小程序的文件存放路徑
python通過(guò)代碼修改pip下載源讓下載庫(kù)飛起
python里面requests.post返回的res.text還有其它的嗎
更多>>隨機(jī)抽取信息
深山旅行社網(wǎng)站管理系統(tǒng) v1.6
網(wǎng)頁(yè)調(diào)用msn/qq/email記錄,淘寶,skype掛在網(wǎng)頁(yè)上
javascri獲取頁(yè)面實(shí)際高度
uni-app基礎(chǔ)知識(shí)數(shù)組形式的數(shù)據(jù)綁定
asp利用正則檢查手機(jī)端的瀏覽器標(biāo)識(shí)來(lái)確定是否是手機(jī)訪問(wèn) 如果是手機(jī)訪問(wèn)就使用手機(jī)模板
ASP漢字圖片驗(yàn)證碼
主站蜘蛛池模板: 免费h| 亚洲网站免费观看 | 亚洲一区国产一区 | 亚洲热在线观看 | 成人国产免费 | 三级黄在线观看 | 中文字幕一区二区三区在线视频 | 91精品国产亚一区二区三区老牛 | 日本在线播放视频 | 亚洲精品久久久日韩美女图片 | 久在草| 国产高清日韩 | 久久精品免费 | 黄软件在线下载 | 黄色软件下载地 | 精品国产一区二区在线观看 | 欧美特级| 很很日很很干 | 久伊人网| 二区国产| 中出少妇| 色图一区 | 91精品综合久久久久久五月天 | 丰满女人裸体淫交视频 | 成人免费观看视频 | 年轻的母亲2免费 | 日本美女一区 | 国产美女被爽到高潮免费 | 人人爱人人 | 亚洲国产成人精品久久久国产成人一区 | 一级毛片看看 | 91精品国产综合久久精品图片 | 日本免费黄色大片 | 高清欧美性猛交xxxx黑人猛 | 在线免费黄色 | 久久一区二区三区四区 | 视频一区二区三区四区五区 | 亚洲免费看片 | 高清国产一区二区三区四区五区 | 精品一区三区 | 成人毛片区|