【发布时间】:2019-05-17 03:03:59
【问题描述】:
在 IE 浏览器中,单击其中一个链接时,会打开一个新浏览器,但 selenium 无法将控制权移至新浏览器,也无法检测到新浏览器中的任何元素。
我正在使用这些 IE 设置。
InternetExplorerOptions option = new InternetExplorerOptions();
option.setCapability(CapabilityType.BROWSER_NAME, "internet explorer");
option.setCapability(InternetExplorerDriver.IE_ENSURE_CLEAN_SESSION, true);
option.setCapability(InternetExplorerDriver.INTRODUCE_FLAKINESS_BY_IGNORING_SECURITY_DOMAINS,true);
option.setCapability(InternetExplorerDriver.UNEXPECTED_ALERT_BEHAVIOR,UnexpectedAlertBehaviour.IGNORE);
option.setCapability(InternetExplorerDriver.REQUIRE_WINDOW_FOCUS,true);
option.setCapability("ignoreProtectedModeSettings", true);
option.setCapability(CapabilityType.PAGE_LOAD_STRATEGY, "normal");
option.setCapability(CapabilityType.ACCEPT_SSL_CERTS, true);
option.setCapability(InternetExplorerDriver.IGNORE_ZOOM_SETTING, true);
我有 IE 浏览器的这些安全设置,但由于公司限制,我无法更改这些设置。 已为“Internet”和“受限站点”启用保护模式,但未为“本地 IntRANET”和“受信任站点”启用。
谁有其他方法来处理这个问题?
【问题讨论】:
-
发布minimal reproducible example,其中包含您用于切换到新打开的浏览器等的代码。
-
您能否发布一个代码示例,说明您如何将焦点移至新窗口以及如何检测其上的元素?我们将尝试检查您的代码并尝试找出问题的原因。
-
您是否尝试过切换到新窗口?
-
这里是代码- String parentWindow = driver.getWindowHandle(); Set
句柄 = driver.getWindowHandles(); for(String windowHandle : 句柄) { if(!windowHandle.equals(parentWindow)) { driver.switchTo().window(windowHandle); driver.manage().window().maximize(); -
我同意@Sachin 的建议。您也可以尝试检查他的建议可能有助于缩小问题范围。
标签: java selenium internet-explorer