我正在尝试使用以下代码在本地计算机上启动IE11浏览器。
try{System.setProperty("webdriver.ie.driver", "src/main/resources/bin/IEDriverServer.exe");
}
catch (Exception ex){
Reporter.log("\nException in getting and setting the webdriver IE driver: "+ ex.getMessage() + ex.getClass(),true);
ex.printStackTrace();
}
WebDriverManager.browser = browser;
driver = new EventFiringWebDriver(new InternetExplorerDriver());
driver.manage().deleteAllCookies();
driver.manage().window().maximize();
当我运行代码时,它会使http://localhost:22414/显示浏览器,但之后无法加载。附上以下日志。
org.openqa.selenium.remote.SessionNotFoundException: Unexpected error launching Internet Explorer. Browser zoom level was set to 125%. It should be set to 100% (WARNING: The server did not provide any stacktrace information)
Command duration or timeout: 2.16 seconds
Build info: version: '2.53.0', revision: '35ae25b1534ae328c771e0856c93e187490ca824', time: '2016-03-15 10:43:46'
System info: host: 'AAAAAA', ip: '123.123.123.123', os.name: 'Windows 8.1', os.arch: 'amd64', os.version: '6.3', java.version: '1.7.0_79'
Driver info: org.openqa.selenium.ie.InternetExplorerDriver
我手动尝试将浏览器缩放级别设置为100%。即使这样,也会出现错误。
答案 0 :(得分:3)
DesiredCapabilities caps = DesiredCapabilities.internetExplorer();
caps.setCapability("ignoreZoomSetting", true);
aDriver = new InternetExplorerDriver(caps);
修正了问题。
答案 1 :(得分:2)
这对我来说很好。进入该缩放级别。
private static InternetExplorerOptions IeSettings()
{
var options = new InternetExplorerOptions();
options.IgnoreZoomLevel = true;
return options;
}
public static IWebDriver ieDriver = new InternetExplorerDriver(IeSettings());
答案 2 :(得分:0)
这可能会解决你的问题,但从长远来看,这可能会给你带来麻烦。否则,您可能会遇到本机鼠标事件无法正确识别坐标的问题。
解决此问题的最佳方法是实际转到IE浏览器,并通过转到设置 - >将缩放级别设置为默认值100%。变焦。
如果您对此感兴趣,请确保:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet
Explorer\Main\FeatureControl\FEATURE_BFCACHE
。对于64位Windows
装置,关键是
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Internet
Explorer\Main\FeatureControl\FEATURE_BFCACHE
。请注意
FEATURE_BFCACHE
子项可能存在也可能不存在,应该存在
如果它不存在则创建。重要提示:在此密钥内,创建一个
名为DWORD
的{{1}}值,其值为iexplore.exe
。
您可以在IE驱动程序github project page上找到更多详细信息。
答案 3 :(得分:0)
System.setProperty("webdriver.ie.driver",".\\browserDrivers\\IEDriverServer.exe");
DesiredCapabilities capability = DesiredCapabilities.internetExplorer();
capability.setCapability("ignoreZoomSetting", true);
capability.setCapability(InternetExplorerDriver.INITIAL_BROWSER_URL, "");
driver = new InternetExplorerDriver(capability);
答案 4 :(得分:0)
DesiredCapabilities已弃用。现在,执行此操作的官方方法是使用InternetExplorerOptions。添加这两行时,请确保在实例化驱动程序时将其作为参数传递。
lock