Java - 无法获得使用 selenium 的最新 Edge/Chromium 版本
Java - Unable to get the latest Edge/Chromium release working with selenium
我们有一组可与 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 的版本是版本 79.0.309.71(官方构建)(64 位),我认为正确的驱动程序是来自 Microsoft 站点的 64 位驱动程序。
然而,我随后尝试了 32 位驱动程序,它按预期工作...
System.setProperty("webdriver.edge.driver", "path\to\msedgedriver_32.exe");
driver = new EdgeDriver();
我使用 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 的位置。
我们有一组可与 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 的版本是版本 79.0.309.71(官方构建)(64 位),我认为正确的驱动程序是来自 Microsoft 站点的 64 位驱动程序。
然而,我随后尝试了 32 位驱动程序,它按预期工作...
System.setProperty("webdriver.edge.driver", "path\to\msedgedriver_32.exe");
driver = new EdgeDriver();
我使用 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 的位置。