
你好,
我想通过在EdgeDriver中有一个选项来实现这一点,但我似乎在地图上找不到它?
我正试图用Selenium和EdgeDriver在边缘内以IE模式打开一个页面。
有办法实现这一伟大的目标吗?双关语
发布于 2020-08-12 03:19:02
我可以在这条线上看到两个问题。
无法通过Selenium Edge驱动程序中的Edge options参数激活IE模式。
是的,可以使用Selenium web驱动程序在新的MS Edge浏览器中自动化IE模式。
新的Microsoft允许您除了现代体验之外,还可以运行遗留站点的IE11验证。若要在Microsoft中运行IE11测试,请从Selenium下载IEDriverServer。然后,您必须通过一个功能,使Microsoft进入IE模式,然后运行测试。
因为此功能使整个浏览器进入IE11模式,所以不能同时测试应该在现代Chromium中呈现的内容,但是您应该能够运行所有的IE11测试并在Microsoft中验证呈现。注意,这段代码需要对IEDriverServer进行更新,这应该包含在下一个Selenium版本中。
从IEDriverServer下载新的SeleniumHQ并按照文档中的这里的“必需配置”说明,您可以运行以下代码以IE11模式启动新的Microsoft并运行一些测试:
static void Main(string[] args)
{
var dir = "{FULL_PATH_TO_IEDRIVERSERVER}";
var driver = "IEDriverServer.exe";
if (!Directory.Exists(dir) || !File.Exists(Path.Combine(dir, driver)))
{
Console.WriteLine("Failed to find {0} in {1} folder.", dir, driver);
return;
}
var ieService = InternetExplorerDriverService.CreateDefaultService(dir, driver);
var ieOptions = new InternetExplorerOptions{};
ieOptions.AddAdditionalCapability("ie.edgechromium", true);
ieOptions.AddAdditionalCapability("ie.edgepath", @"\\msedge.exe");
var webdriver = new InternetExplorerDriver(ieService, ieOptions, TimeSpan.FromSeconds(30));
webdriver.Url = "http://www.example.com";
}输出:

备注:
参考文献:
发布于 2020-08-24 13:33:19
下面的代码(在VB.NET中,但您可以轻松地将其修改为C#)将在IE模式下启动Chromium
Dim ieService = InternetExplorerDriverService.CreateDefaultService("DIRECTORY_PATH_HAVING_IEDriverServer.exe", "IEDriverServer.exe")
Dim ieOptions = New InternetExplorerOptions
ieOptions.IgnoreZoomLevel = True
ieOptions.AddAdditionalCapability("ie.edgechromium", True)
ieOptions.AddAdditionalCapability("ie.edgepath", "C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe")
Dim driver = New InternetExplorerDriver(ieService, ieOptions, TimeSpan.FromSeconds(60))
driver.Navigate().GoToUrl("https://example.com")您可以从IEDriverServer下载https://www.selenium.dev/downloads/
https://stackoverflow.com/questions/63361687
复制相似问题