Macaca 使用 contexts () 方法时报错

Aaron · 2019年09月23日 · 最后由 Aaron 回复于 2019年10月21日 · 2448 次阅读

使用 contexts() 方法获取可用上下文的列表时报错。

>> versions.js:66:12 [master] pid:81800 No proper chromedriver version found for webview version: 77!
>> macaca-android.js:327:14 [master] pid:81800 initChromeDriver failed!Error: >> versions.js:66:12 [master] pid:81800 No proper chromedriver version found for webview version: 77!
>> responseHandler.js:56:12 [master] pid:81800 Send Error Respone to Client: Error: >> macaca-android.js:327:14 [master] pid:81800 initChromeDriver failed!Error: >> versions.js:66:12 [master] pid:81800 No proper chromedriver version found for webview version: 77!
>> responseHandler.js:62:14 [master] pid:81800 Error: >> macaca-android.js:327:14 [master] pid:81800 initChromeDriver failed!Error: >> versions.js:66:12 [master] pid:81800 No proper chromedriver version found for webview version: 77!
    at Logger.error (/Users/Aaron/.nvm/versions/node/v10.6.0/lib/node_modules/macaca-android/node_modules/xlogger/lib/xlogger.js:169:9)
    at Android.getWebviews (/Users/Aaron/.nvm/versions/node/v10.6.0/lib/node_modules/macaca-android/lib/macaca-android.js:327:14)
    at Android.getWebviews.throw (<anonymous>)
    at onRejected (/Users/Aaron/.nvm/versions/node/v10.6.0/lib/node_modules/macaca-cli/node_modules/co/index.js:81:24)
    at process._tickCallback (internal/process/next_tick.js:68:7)

  Error: >> macaca-android.js:327:14 [master] pid:81800 initChromeDriver failed!Error: >> versions.js:66:12 [master] pid:81800 No proper chromedriver version found for webview version: 77!
      at Logger.error (/Users/Aaron/.nvm/versions/node/v10.6.0/lib/node_modules/macaca-android/node_modules/xlogger/lib/xlogger.js:169:9)
      at Android.getWebviews (/Users/Aaron/.nvm/versions/node/v10.6.0/lib/node_modules/macaca-android/lib/macaca-android.js:327:14)
      at Android.getWebviews.throw (<anonymous>)
      at onRejected (/Users/Aaron/.nvm/versions/node/v10.6.0/lib/node_modules/macaca-cli/node_modules/co/index.js:81:24)
      at process._tickCallback (internal/process/next_tick.js:68:7)
共收到 9 条回复 时间 点赞

chromedriver 版本不对?

查了下,发现有 3 个问题:

1.macaca-android 依赖的 macaca-chromedriver 为 1.0.x(1.0.45) 版本,这个版本的 versions.js 的 versionMap 中没有 webviewVersions===77 的版本

具体看这里https://github.com/macacajs/macaca-chromedriver/blob/2225d8f1acf48c988293dbbcd34ab68418a0841f/lib/versions.js#L12-L51

版本依赖情况看这里https://github.com/macacajs/macaca-android/blob/master/package.json#L17

2.新本的 macaca-chromedriver@1.2.3 中的 versionMap 最新是到 76,官方已到 78,macaca-chromedriver 未及时更新

3.新本的 macaca-chromedriver@1.2.3 中 webviewVersion 的版本判断条件有问题,这里用的是===强匹配,但是入参的 webviewVersion 参数为 String 类型,具体看这里https://github.com/macacajs/macaca-chromedriver/blob/master/lib/versions.js#L78
补充下参数打印截图

4楼 已删除

你好!我遇到了这个问题,请问有替代方案可用吗?或者我怎么降低 webview version 暂时解决这个问题呢?

已修复

Super-Ps 回复

这个问题还是没修复,要把 Macac-android 依赖 macaca-chromedriver 版本进行一下升级

1.macaca-android 依赖的 macaca-chromedriver 为 1.0.x(1.0.45) 版本,这个版本的 versions.js 的 versionMap 中没有 webviewVersions===77 的版本

具体看这里https://github.com/macacajs/macaca-chromedriver/blob/2225d8f1acf48c988293dbbcd34ab68418a0841f/lib/versions.js#L12-L51

版本依赖情况看这里https://github.com/macacajs/macaca-android/blob/master/package.json#L17

Super-Ps 回复


更新之后遇到这个问题

Aaron 回复
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册