• 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()
    
  • 相关阅读:
    winfrom 正则验证
    winfrom api发送消息,实现滚动效果(重绘滚动条用)
    C#程序员开发WinForm必须知道的 Window 消息大全
    C# VS EditorBrowsable特性 控制智能提示
    C# Attribute简介
    Win32窗口鼠标消息
    C# 自定义控件容器,设计时可添加控件
    Linux管线命令
    Linux数据流重定向
    Shell中的变量
  • 原文地址:https://www.cnblogs.com/superhin/p/11537210.html
Copyright © 2020-2023  润新知