Appium Inspector定位Webview/H5页面元素

一时失言乱红尘 2023-10-09 10:15 181阅读 0赞

目录

  • 操作步骤
  • Python操作该混合App代码

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代码

  1. from appium import webdriver
  2. from time import sleep
  3. caps = {
  4. "platformName": "Android",
  5. "platformVersion": "5.1.1",
  6. "deviceName": "127.0.0.1:62001",
  7. "appPackage": "com.example.testapp",
  8. "appActivity": "com.example.testapp.MainActivity"
  9. }
  10. driver = webdriver.Remote('http://localhost:4723/wd/hub', caps)
  11. driver.find_element_by_id("com.example.testapp:id/urlField").send_keys("http://m.baidu.com")
  12. driver.find_element_by_id("com.example.testapp:id/goButton").click()
  13. driver.find_element_by_xpath('//android.webkit.WebView[@content-desc="百度一下"]/android.widget.EditText').send_keys("Appium")
  14. driver.find_element_by_xpath('//android.webkit.WebView[@content-desc="百度一下"]/android.widget.Button[@content-desc="百度一下"]').click()
  15. sleep(3)
  16. driver.quit()

转载于:https://www.cnblogs.com/superhin/p/11537210.html

发表评论

表情:
评论列表 (有 0 条评论,181人围观)

还没有评论,来说两句吧...

相关阅读

    相关 appium元素定位(12)

    自动化测试来说,核心技能就是对象的定位。不管是 web 页面上的一个 按钮或输入框,还是移动 app 上的一个按钮或输框,我们要想对其进行点击或输入操作,前提是要先找到这