我正在使用Java和Selenium,并尝试在登录后获取正在测试的应用程序的会话ID。我找到了这段代码,但它为我提供了驱动程序的会话ID。这对我没有用。我想要我正在运行的应用程序的会话。
SessionId sessionId = ((FirefoxDriver) driver).getSessionId();
最佳答案
尝试这种方式:
WebDriver seleniumDriver = new FirefoxDriver();
try {
String domainString = "http://yourURL";
String baseUrl = domainString;
seleniumDriver.manage().timeouts().implicitlyWait(45, TimeUnit.SECONDS);
seleniumDriver.get(baseUrl + "/Login.aspx/");
seleniumDriver.findElement(By.id("username")).clear();
seleniumDriver.findElement(By.id("username")).sendKeys("username");
seleniumDriver.findElement(By.id("password")).clear();
seleniumDriver.findElement(By.id("password")).sendKeys("password");
seleniumDriver.findElement(By.cssSelector("input.primary.btn")).click();
String ASPNET_SessionId = seleniumDriver.manage().getCookieNamed("ASP.NET_SessionId").toString();
System.out.println(ASPNET_SessionId);
}
finally {
seleniumDriver.close();
}