【问题标题】:org.openqa.selenium.WebDriverException: unknown error: cannot find MSEdge binary error using EdgeDriver and Selenium on Mac through Javaorg.openqa.selenium.WebDriverException:未知错误:无法通过 Java 在 Mac 上使用 EdgeDriver 和 Selenium 找到 MSEdge 二进制错误
【发布时间】:2020-05-26 20:59:22
【问题描述】:

我无法使用 Selenium Remote Web 驱动程序在 MAC 上运行 MS Edge 测试。

我尝试如下设置边缘二进制的系统属性:

dc = DesiredCapabilities.edge();
System.setProperty("webdriver.edge.driver", "/Users/username/Softwares/Work/jars/msedgedriver");
dc.setCapability("edge_binary","/Applications/Microsoft Edge Beta.app");

我检查了我安装的 msedge 驱动程序版本和 MS Edge 浏览器版本。 两者都是 - 80.0.361.48

这是 Selenium 节点上的日志:

020-02-11 18:06:37.533:INFO:osjshC.ROOT:qtp1800659519-12:org.openqa.selenium.remote.server.WebDriverServlet-59309333:初始化 WebDriverServlet 18:06:37.551 信息 - 找到处理程序:org.openqa.selenium.remote.server.commandhandler.BeginSession@47c6497e 18:06:37.555 INFO - /session:在 /session 上执行 POST(处理程序:BeginSession) 18:06:37.632 信息 - 功能是:功能 {MicrosoftEdge_binary:/Applications/Microsoft Edg...,浏览器名称:MicrosoftEdge,平台:MAC,版本:} 18:06:37.633 信息 - 功能 {MicrosoftEdge_binary:/Applications/Microsoft Edg...,浏览器名称:MicrosoftEdge,平台:MAC,版本:} 匹配类 org.openqa.selenium.remote.server.ServicedSession$Factory(提供者:org .openqa.selenium.edge.EdgeDriverService) 在端口 31883 上启动 MSEdgeDriver 80.0.361.48 (e1a3ff36578e440880567e6adcbeab38ec2956fa) 只允许本地连接。 请保护MSEdgeDriver和相关测试框架使用的端口,防止恶意代码访问。

运行代码时遇到的异常是

org.openqa.selenium.WebDriverException:未知错误:找不到 MSEdge 二进制文件 构建信息:版本:'3.7.1',修订:'8a0099a',时间:'2017-11-06T21:07:36.161Z' 系统信息:主机:'****-MacBook-Pro.local',ip:'fe80:0:0:0:14d9:68c6:7d2c:87a%en0',os.name:'Mac OS X', os.arch:'x86_64',os.version:'10.15.2',java.version:'1.8.0_152' 驱动信息:driver.version:未知

【问题讨论】:

    标签: java macos selenium selenium-webdriver selenium-edgedriver


    【解决方案1】:

    此错误消息...

    org.openqa.selenium.WebDriverException: unknown error: cannot find MSEdge binary 
    Build info: version: '3.7.1', revision: '8a0099a', time: '2017-11-06T21:07:36.161Z' 
    System info: host: '****-MacBook-Pro.local', ip: 'fe80:0:0:0:14d9:68c6:7d2c:87a%en0', os.name: 'Mac OS X', os.arch: 'x86_64', os.version: '10.15.2', java.version: '1.8.0_152' 
    Driver info: driver.version: unknown
    

    ...暗示程序无法在您的系统中找到 MSEdge 二进制文件。

    您的主要问题是您使用的二进制文件版本之间的不兼容性,如下所示:

    • 虽然您使用的是兼容版本的 MS Edge Driver v80.0MS Edge Browser v80.0
    • 您的 Selenium Client 版本是 2017-11-06T21:07:36.161Z3.7.1,几乎是 2.5 岁。
    • 但是您的 JDK 版本1.8.0_152,相当古老

    所以 JDK v8u152Selenium Client v'3.7.1MS Edge Driver v80.0MS Edge 浏览器 v80.0


    解决方案

    确保:

    • JDK 升级到当前级别JDK 8u241
    • Selenium 升级到当前级别 Version 3.141.59
    • 进行系统重启
    • 非root用户身份执行@Test

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-05-16
      • 2018-02-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多