截至本文发布之日,“Microsoft Edge”这个名称刚刚被正式宣布为新 Windows 10 的默认浏览器。
现在问这个问题可能为时过早,但我想知道是否有新的 Selenium WebDriver 可用,如果没有,是否有任何迹象表明我们可能要等多久才能看到开发出来的?
(Windows 10 的技术预览版已经发布,所以这对我来说似乎不是一个愚蠢的问题。)
截至本文发布之日,“Microsoft Edge”这个名称刚刚被正式宣布为新 Windows 10 的默认浏览器。
现在问这个问题可能为时过早,但我想知道是否有新的 Selenium WebDriver 可用,如果没有,是否有任何迹象表明我们可能要等多久才能看到开发出来的?
(Windows 10 的技术预览版已经发布,所以这对我来说似乎不是一个愚蠢的问题。)
是的,Microsoft Edge 有一个 WebDriver 实现。其最初的可用性于2015 年 7 月 23 日宣布。Selenium 开源项目中的语言绑定已更新以利用此驱动程序实现,这些更新已在 Selenium 2.47 中发布。请注意,Java 语言绑定已重新发布为 2.47.1,以纠正最初的问题。最初的实现功能有限,但Microsoft 致力于实现功能齐全的驱动程序实现,因此即将推出更新。
微软提供了可用于 Edge 浏览器的 MicrosoftWebDriver。
需要根据操作系统内部版本号下载正确版本的 MicrosoftWebDriver
转到开始 > 设置 > 系统 > 关于并记下操作系统内部版本号。
从此链接下载正确版本的驱动程序 - https://developer.microsoft.com/en-us/microsoft-edge/tools/webdriver/
如果下载的文件是 .msi,则安装它以获取 .exe 驱动程序。对于其中一个版本,可以直接下载 .exe。
下载 MicrosoftWebDriver.exe 后,我们可以使用 System.setProperty("webdriver.edge.driver", "driver location") 或使用环境变量在测试脚本中使用它
示例脚本将是这样的 -
System.setProperty("webdriver.edge.driver","C:\\Program Files (x86)\\Microsoft Web Driver\\MicrosoftWebDriver.exe"); //put actual location
WebDriver driver = new EdgeDriver();
driver.get("your link");
有关详细信息,请参阅本文 - http://automationtestinghub.com/selenium-3-launch-microsoft-edge-with-microsoftwebdriver/
可以使用库webdrivermanager自动下载 Selenium的Microsoft Edge 驱动程序(适用于 Java) ,如下所示:
EdgeDriverManager.getInstance().setup();
变量webdriver.edge.driver也由 webdrivermanager 以MicrosoftWebDriver.exe的正确路径导出。
“如果不清楚,Microsoft Edge 将支持 WebDriver。它今天不可用,但正在开发中 Q's?#msedgesummit”来自 John Jansen 的推文 - “Microsoft 工程师。首席软件工程师(nee Test ) 领导 Spartan 项目(nee Internet Explorer)。” 你可以在推特上找到他@thejohnjansen 并等待公告:)
先决条件:您的计算机上已安装 Windows 10
MS Edge 的 Selenium WD Java 代码如下:
System.setProperty("webdriver.edge.driver", "D:\Ripon\MicrosoftWebDriver.exe");
驱动程序 = 新 EdgeDriver();
从 EdgeHTML 版本 18(随 Windows 版本 1809 一起提供)起,不再有独立的驱动程序下载。您可以通过以下两种方式之一获取新驱动程序:
旧版本仍可从以下网址获得: https ://developer.microsoft.com/en-us/microsoft-edge/tools/webdriver/
更新:看来版本 18 现在是旧版了,自从迁移到 Chromium 后,我们又重新安装了单独的 Web 驱动程序。正上方的链接仍会将您带到正确的驱动程序页面。
感谢您的帮助,我的测试被阻止,搜索 selenium EdgeDriver 实现询问的“EdgeDriver.exe”,只找到 MicrosoftWebDriver。
如果这可以帮助某人,我已经在 C# 中做了这个,基于你以前的答案:
首先,您需要下载 MicrosoftWebDriver nuget 包,这个只会在编译时将 MicrosoftWebDriver.exe 复制到您的目标文件夹中
private readonly string _localDir = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location);
Environment.SetEnvironmentVariable("webdriver.edge.driver", _localDir + "MicrosoftWebDriver.exe");
var driver = new EdgeDriver();
希望这可以帮助某人。