zoukankan      html  css  js  c++  java
  • appium+python自动化41-切换webview时候报chromedriver版本问题

    前言

    用appium切换webview的时候报chrome和chromedriver版本的问题:session not created exception: Chrome version must be >= 58.0.3029.0
    (Driver info: chromedriver=2.30.477700 )

    运行环境:
    android 7.0
    appium 1.7.1
    appium里面chromedriver 2.28
    webview版本 57.0

    遇到问题

    1.当执行switch_to.context('WEBVIEW_NAME')这句代码的时候,会报chrome浏览器和chromedriver不匹配,代码报错信息如下:

    selenium.common.exceptions.WebDriverException: Message: An unknown server-side error occurred while processing the command. Original error: session not created exception: Chrome version must be >= 58.0.3029.0
      (Driver info: chromedriver=2.30.477700 (0057494ad8732195794a7b32078424f92a5fce41),platform=Windows NT 6.1.7601 SP1 x86_64)
    

    2.查看appium的日志,很显然是因为版本号不匹配导致的

    {"sessionId":"54f24f2451884a7fdcc64fc6480c4a91","status":33,"value":{"message":"session not created exception: Chrome version must be >= 58.0.3029.0
      (Driver info: chromedriver=2.30.477700 (0057494ad8732195794a7b32078424f92a5fce41),platform=Windows NT 6.1.7601 SP1 x86_64)"}}
    [Chromedriver] Chromedriver exited unexpectedly with code null, signal SIGTERM
    [Chromedriver] Changed state to 'stopped'
    [Chromedriver] Unable to automate Chrome version because it is too old for this version of Chromedriver.
    [Chromedriver] Please see 'https://github.com/appium/appium/blob/master/docs/en/advanced-concepts/chromedriver.md'
    [Chromedriver] Error: session not created exception: Chrome version must be >= 58.0.3029.0
    

    3.那么问题来了,这个chrome版本到底是手机上chrome浏览器版本还是电脑上chrome浏览器版本,还是哪里的版本号呢?这个chromedriver又是哪的驱动版本?

    查看webview版本号

    1.以微信为例,webview的版本号可以用chrome浏览器查看到,由于微信用的是x5内核,跟其他app不太一样,这里需要先开启微信的debug模式

    开启微信debug模式:在微信聊天界面输入:debugx5.qq.com,如何勾选"打开TBS内核Inspector调试功能

    2.查看微信里面webview版本,直接在电脑chrome浏览器输入:chrome://inspect/#devices
    再打开微信的公众号页面,刷新浏览器页面,就会出现webview版本号57.0

    chromedrive下载

    1.找到webview的chrome版本号了,接下来下载对应的chromedriver驱动包就可以了,57的webview对应2.28驱动
    下载地址:chromedriver版本下载

    2.chromedriver下载后应该放哪呢?首先找到报错里面的chromedriver=2.30.477700 版本是从哪里来的,替换掉就可以了。查找路径: ode_modulesappium ode_modulesappium-chromedriverchromedriverwin

    找到后双击就能显示版本号,chromedriver=2.30.477700也就是报错里面看到的

    备注:版本不一样,路径可能不太一样,自己搜索:appium-chromedriver

    3.把刚才下载2.28版本的chromedriver.exe替换掉这个2.30版本就可以了

    在学习过程中有遇到疑问的,可以appium+python QQ群交流:330467341

  • 相关阅读:
    Linux基础命令---nfsstat显示nfs信息
    Linux基础命令----smbclient
    Myeclipse10下载,安装,破解,插件,优化介绍
    MyEclipse常用插件使用教程
    MyEclipse10 中的两种FreeMarker插件的安装与配置
    导入项目名称重复
    append,appendTo和prepend #1daae2
    Java Session超时设置
    jquery刷新页面
    windows不能显示此连接属性。windows management instrumentation (WMI) 信息可能损坏
  • 原文地址:https://www.cnblogs.com/yoyoketang/p/9009209.html
Copyright © 2011-2022 走看看