Appium Inspector定位Webview/H5頁面元素


Appium在操作混合App或Android App的H5頁面時, 常常需要定位H5頁面中的元素, 傳統方式是 翻牆 + 使用Chrome://inspect來定位元素, 環境准備相當繁瑣, 不僅需要想辦法翻牆, 而且還需要Android設備安裝Google框架以及手機版Chrome瀏覽器以及相應的chromedriver.

最近發現使用Appium Inspector即可實現H5頁面元素的定位, 不需要額外安裝任何軟件。

操作步驟

  • 啟動夜神模擬器, 安裝testApp(相關app可添加博主微信索要)

啟動夜神模擬器

  • adb連接,模擬器
adb connect 127.0.0.1:62001
  • 啟動Appium, 點擊右上角搜索圖標進入Appium Inspector

啟動Appium Inspector

  • 使用以下配置,啟動會話
{
  "platformName": "Android",
  "platformVersion": "5.1.1",
  "deviceName": "127.0.0.1:62001",
  "appPackage": "com.example.testapp",
  "appActivity": "com.example.testapp.MainActivity"
}

啟動會話

  • 在模擬器上輸入http://m.baidu.com,點擊Go按鈕,使用Appium Inspector定位查看頁面元素,如下圖:

Appium Inspector定位H5頁面元素

Python操作該混合App代碼

from appium import webdriver
from time import sleep

caps = {
    "platformName": "Android",
    "platformVersion": "5.1.1",
    "deviceName": "127.0.0.1:62001",
    "appPackage": "com.example.testapp",
    "appActivity": "com.example.testapp.MainActivity"
}

driver = webdriver.Remote('http://localhost:4723/wd/hub', caps)

driver.find_element_by_id("com.example.testapp:id/urlField").send_keys("http://m.baidu.com")
driver.find_element_by_id("com.example.testapp:id/goButton").click()


driver.find_element_by_xpath('//android.webkit.WebView[@content-desc="百度一下"]/android.widget.EditText').send_keys("Appium")
driver.find_element_by_xpath('//android.webkit.WebView[@content-desc="百度一下"]/android.widget.Button[@content-desc="百度一下"]').click()

sleep(3)

driver.quit()


免責聲明!

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



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