问题描述
您好,
我想通过在EdgeDriver中有一个选项来实现这一点,但我似乎在地图上的任何地方都找不到它?
我正在尝试使用Selify和EdgeDriver在Edge内部以IE模式打开页面。
有没有办法实现这一伟大的目标?[有意使用双关语]
推荐答案
我在此帖子中看到两个问题。
- 是否有办法在"边缘选项"中激活IE模式?
无法绕过Selify Edge驱动程序中的Edge Options参数激活IE模式。
- 我正在尝试使用Selify和EdgeDriver在Edge内部以IE模式打开页面。有没有办法实现这一伟大的目标?
可以,可以使用Selify Web驱动程序在新的MS Edge浏览器中自动进入IE模式。
新的Microsoft Edge允许您在现代体验之外,对旧站点运行IE11验证。要在Microsoft Edge中运行IE11测试,请从Selify下载IEDriverServer。然后,您必须传入将Microsoft Edge置于IE模式的功能,然后运行测试。因为该功能将整个浏览器置于IE11模式,所以您不能同时测试应该在现代Chromium引擎中呈现的内容,但您应该能够运行所有IE11测试并在Microsoft Edge中验证呈现。请注意,此代码需要对IEDriverServer进行更新,该更新应包含在下一版本的Selify中。
从SeleniumHQ下载新的IEDriverServer并按照文档here中的"必需配置"说明操作后,您可以运行以下代码以在IE11模式下启动新的Microsoft Edge并运行一些测试:
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";
}
输出:
备注:
确保您使用的是最新版本的IE驱动程序服务器。
我建议使用最新版本的稳定边缘浏览器进行测试。
尝试在"ie.edgepath"功能中传递Edge浏览器的完整路径。例如:
ieOptions.AddAdditionalCapability(";ie.edgepath";,@C:计划文件(x86)MicrosoftEdgeApplicationmsedge.exe";);
确保在运行代码之前关闭所有已打开的Edge浏览器实例和选项卡。否则,它将生成错误。
引用:
滚动到此链接中的Automating Internet Explorer mode点。
kypflug/webdriver-edge-ie-mode.cs
这篇关于有没有办法在边缘选项中激活IE模式?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!