zoukankan      html  css  js  c++  java
  • APPIUM 小程序webview问题

    小程序许多界面都是hybrid,有些webview页面用uiautomator viewer查看不到元素,这里就要 获取webview  的pagesource了

    1.环境:

      需要确定appium_chromedriver的版本和微信的webview版本对应:

    获取微信的webview版本信息,打开x5调试debugx5.qq.com 在信息页面下打开对应的inspector调试 然后进入谷歌浏览器chrome://inspect/#devices在
    对应的设备下查看  appium_chromedriver版本自行百度

    2.app启动参数:

    在caps中指定对应的driver:
    1.caps['chromedriverExecutableDir']=r'C:UsersAdministratorDesktopappium_chromedriver'
    2.caps['chromedriverExecutable']=r'C:UsersAdministratorDesktopappium_chromedriverchromedriver.exe'

    加上对应Androidprocess

    caps['chromeOptions']={'androidProcess':xxxx',
    'args': ['--no-sandbox']
    }

    其中获取androidProcess的方法为: 先进入对应界面
    获取进程pid
    adb shell dumpsys activity top | findstr ACTIVITY
    获取name
    adb shell ps + pid

    3.代码:

    # print("======")
    # contexts=driver.contexts
    # print(contexts)
    #
    driver.switch_to.context("WEBVIEW_com.tencent.wework")
    print("switch success")
    # all_handles = driver.window_handles
    # print (len(all_handles))
    # print(all_handles)
    # print (driver.page_source)

    4.退出webview回到native

     driver.switch_to.context("NATIVE_APP")

      

      

  • 相关阅读:
    mac系统终端的color scheme配置和vim配置
    用子网掩码划分子网
    堆排序
    面试遇到两个稍显变态的题目,mark一下
    移动端适配的问题
    移动端click事件延时
    行内元素之间间距的产生与去除
    JS怎么判断一个对象是否为空
    Java面向对象基础
    Java中的final关键字
  • 原文地址:https://www.cnblogs.com/alantammm/p/10688725.html
Copyright © 2011-2022 走看看