IEDriverServer Wiki页面列出了以下需求:
在Windows或Windows 7上的IE7或更高版本上,必须将每个区域的保护模式设置设置为相同的值。只要每个区域的值是相同的,则值可以是on或off。
不幸的是,在我工作的地方,公司安全策略已经锁定了保护模式设置,所以我无法对设置进行更改。
有什么方法可以解决这个问题,让IEDriverServer正常工作吗?还是Selenium不适用于在Windows 7上运行IE 7+的企业环境,在这种环境中,用户无法更改受保护的模式设置?
谢谢,戴夫
发布于 2012-07-10 08:23:40
我也有同样的问题。
我通过直接编辑注册表来解决这个问题。
尽管下面是Java的一个示例,但它也可以在另一种语言中使用。我在创建IEDriver实例之前调用此方法。
如果您想要禁用它,请设置3而不是0。
private void enableIEProtectModeOfAllZones() {
final String[] ZONES = {
"\"HKCU\\Software\\Microsoft\\Windows\\CurrentVersion\\Internet Settings\\Zones\\1\""
, "\"HKCU\\Software\\Microsoft\\Windows\\CurrentVersion\\Internet Settings\\Zones\\2\""
, "\"HKCU\\Software\\Microsoft\\Windows\\CurrentVersion\\Internet Settings\\Zones\\3\""
, "\"HKCU\\Software\\Microsoft\\Windows\\CurrentVersion\\Internet Settings\\Zones\\4\""
};
for (String zone : ZONES) {
ProcessBuilder pb = new ProcessBuilder("cmd", "/c", "reg", "add",
zone, "/v", "2500", "/t", "REG_DWORD", "/d", "0", "/f");
try {
pb.start();
} catch (IOException ioe) { ioe.printStackTrace(); }
}
}发布于 2012-07-10 13:03:18
据我所知,您正在使用Selenium。请将以下内容添加到您的驱动程序设置中:capabilities.setCapability(InternetExplorerDriver.INTRODUCE_FLAKINESS_BY_IGNORING_SECURITY_DOMAINS, true)。
发布于 2013-01-24 07:04:15
您需要使用参数创建IE驱动程序实例,我假设您使用的是C#
InternetExplorerOptions opts = new InternetExplorerOptions();
opts.IntroduceInstabilityByIgnoringProtectedModeSettings = true;
IWebDriver wDriver = new InternetExplorerDriver(opts);这将解决你的问题
https://stackoverflow.com/questions/11401599
复制相似问题