0

由于 Edge 已升级到 v80,它为我们的自动化引入了“重大更改”( https://docs.microsoft.com/en-us/microsoft-edge/webdriver-chromium?tabs=c-sharp )。Microsoft 在附加的链接中记录了这一点。理想情况下,我希望继续使用 Selenium 3 并使用 edge-selenium-tools ( https://github.com/microsoft/edge-selenium-tools ),但考虑到我的框架是基于 Java 的,这不是一个选择。

为了解决这个问题,我更新到了 Selenium 4(alpha 5),它支持 Edge Chromium 的 v81,但只是在一定程度上。

ChromiumEdgeDriverService/ EdgeDriverService(我现在什至不确定我现在应该使用哪个)作为参数传递给的EdgeDriver WebDriver能力已被取消(https://www.javadoc.io/doc/org.seleniumhq.selenium/selenium-edge-driver /latest/org/openqa/selenium/edge/package-summary.html)。这是我在无头模式下实现下载的解决方法所依赖的东西,因此我渴望恢复该功能。

我不确定这是否应该作为改进或回归报告给 SeleniumHQ(https://github.com/SeleniumHQ/selenium/issues/new/choose),或者我应该向微软提出的问题,但我是寻找一些关于在这种情况下我应该做什么的指导。

为了澄清,以下是我在 Chrome 中使用的 - 它工作正常:

ChromeDriverService chromeDriverService = ChromeDriverService.createDefaultService();
driver = new ChromeDriver(chromeDriverService,new ChromeOptions())

这就是我想在 Edge Chromium 中做的事情——这会导致错误,因为这些参数不存在构造函数:

EdgeDriverService edgeDriverService = EdgeDriverService.createDefaultService();
driver = new EdgeDriver(edgeDriverService,new EdgeOptions());

ps 完全一样ChromiumEdgeDriverService

4

1 回答 1

0

这现在在 Selenium 4.0.0-alpha-6 中工作

于 2020-06-05T13:05:56.560 回答