【问题标题】:Java - Unable to get the latest Edge/Chromium release working with seleniumJava - 无法使用 selenium 获得最新的 Edge/Chromium 版本
【发布时间】:2020-01-27 12:29:42
【问题描述】:

我们有一组适用于 Chrome/Firefox/Edge(Chromium Edge 之前)的 Selenium 自动测试。我们希望能够针对最新的边缘运行设置的测试套件。

Selenium (Java) - 4.0.0-alpha-4
Edge - 79.0.309.71

我尝试了以下设置的各种组合

System.setProperty("webdriver.edge.edgehtml", "false");
System.setProperty("webdriver.edge.driver", "path\to\msedgedriver.exe");
System.setProperty("webdriver.chrome.driver", "path\to\msedgedriver.exe");

EdgeOptions edgeOptions = new EdgeOptions();
edgeOptions.setBinary("path\to\msedgedriver.exe");

driver = new EdgeDriver();

每次都报如下错误

org.openqa.selenium.WebDriverException: Timed out waiting for driver server to start.
Build info: version: '4.0.0-alpha-4', revision: 'c2d955b49e'
System info: os.name: 'Windows 10', os.arch: 'amd64', os.version: '10.0', java.version: '1.8.0_162'
Driver info: driver.version: EdgeDriver

有人搞定了吗?

【问题讨论】:

  • 你安装的 Edge 版本是多少?还是和edge.driver一样?这是声明edge.driverSystem.setProperty("webdriver.edge.driver", "path\to\msedgedriver.exe");(你的第二个setProperty)路径的正确方法
  • 它是 edge v79.0.309.71,与来自developer.microsoft.com/en-us/microsoft-edge/tools/webdriver的正确匹配驱动程序
  • 您尝试过使用 Selenium 3.14 吗?确定这不是 alpha 4.0 的问题?
  • 也尝试使用较新版本的java oracle.com/technetwork/java/javase/downloads/…(至少8u181
  • 32 与 64 位驱动程序对我来说是个问题,但感谢 cmets @KunLun

标签: java selenium microsoft-edge chromium


【解决方案1】:

我使用 Microsoft Edge(Chromium) Beta 版本 79.0.309.43 和相同版本的 Microsoft Edge(Chromium) WebDriver 进行测试(您可以从 here 下载 webdriver)并且它可以工作。您可以参考下面的代码并将路径更改为您自己的:

import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.chrome.ChromeOptions; 
import org.openqa.selenium.edge.EdgeOptions;


public class Edgeauto {
    public static void main(String[] args) { 
        System.setProperty("webdriver.chrome.driver", "your\\path\\to\\edge\\webdriver\\msedgedriver.exe");
        ChromeOptions chromeOptions = new ChromeOptions();
        chromeOptions.setBinary("C:\\Program Files (x86)\\Microsoft\\Edge Beta\\Application\\msedge.exe");
        EdgeOptions edgeOptions = new EdgeOptions().merge(chromeOptions);
        WebDriver driver = new ChromeDriver(edgeOptions);
        driver.get("https://www.google.com/");
    }
}

另外请记住在您的 PATH 中包含 Edge Beta 和 msedgedriver.exe 的位置。

【讨论】:

    【解决方案2】:

    不确定这是否适用于每个人,但我自己通过执行以下操作修复了它...

    edge 的版本是版本 79.0.309.71(官方构建)(64 位),我认为正确的驱动程序是来自 microsoft 站点的 64 位驱动程序。

    但是,我随后尝试了 32 位驱动程序,它按预期工作......

    System.setProperty("webdriver.edge.driver", "path\to\msedgedriver_32.exe");
    
    driver = new EdgeDriver();
    

    【讨论】:

      猜你喜欢
      • 2019-06-20
      • 1970-01-01
      • 2021-03-30
      • 2012-12-31
      • 2019-09-28
      • 2020-05-03
      • 2021-08-24
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多