【发布时间】:2018-11-12 21:01:11
【问题描述】:
我需要跟踪应用程序的某些特殊要求的会话 ID,并且必须在应用程序 UI 的访问日志页面中匹配相同的会话 ID。我尝试使用以下代码,它在 firefox 驱动程序中正常工作。
String ASPNET_SessionId = driver.manage().getCookieNamed("JSESSIONID").toString();
strSessionID = ASPNET_SessionId.split("=")[1].split(";")[0];
我们在 out 框架中有一个功能,我们可以在任何浏览器中执行,无论是 Firefox 还是 IE。但是当试图在 IE 中执行我的测试时,它在获取会话 ID 时出现空指针异常。基本上会话是空的。
我尝试按如下方式调用 IE:
strIEDriverPath = currentDir+(FileHandlerClass.readPropertiesXml(strPropertiesFilePath, "IEDriverPath"));
System.setProperty("webdriver.ie.driver", strIEDriverPath);
DesiredCapabilities capab = DesiredCapabilities.internetExplorer();
capab.setCapability(InternetExplorerDriver.INTRODUCE_FLAKINESS_BY_IGNORING_SECURITY_DOMAINS, true);
driver = new InternetExplorerDriver(capab);
但还是没有帮助....
谁能建议我如何从 IE 驱动程序获取会话 ID?任何帮助或建议都将受到高度赞赏..
【问题讨论】:
-
如果不是在 IE 配置中显式引入易碎性(您已经通过使用
INTRODUCE_FLAKINESS_BY_IGNORING_SECURITY_DOMAINS功能完成),而是 correctly configure Protected Mode 与 WebDriver 一起使用,会发生什么? -
正确配置了 IE 保护模式并删除了该功能。但仍然得到空指针异常。无法分析为什么会发生。有什么建议请...
标签: java internet-explorer selenium selenium-webdriver jsessionid