我需要阅读警报&弹出窗口中显示的确认消息使用java并在控制台上打印。在从IDE导出selenium记录为 Junit4 (WebDriver)java文件时,我的代码是:
private WebDriver driver;
private String baseUrl;
private StringBuffer verificationErrors = new StringBuffer();
@Before
public void setUp() throws Exception {
driver = new FirefoxDriver();
}
现在,当我尝试使用getAlert
或getConfirmation
函数时,如下所示:
@Test
public void testSample() throws Exception {
Alert alert = driver.switchTo().alert();
message = alert.getText();
System.out.println("message is "+message);
}
我收到以下错误:
java.lang.NullPointerException
at com.example.tests.Sample.testSample(Sample.java:40)
at com.example.tests.Sample.main(Sample.java:149)
Exception: null
我该如何处理?还有其他方法可以阅读弹出消息吗?
答案 0 :(得分:5)
使用 -
导航到任何页面时,在testSample()方法中driver.get("URL");
之后,您可以解释警报消息如何在第一位出现。
您确定显示的弹出消息是javascript alert
还是正在打开的任何窗口。
如果是警告消息,则可以使用 -
访问它driver.switchTo().alert();
但如果弹出窗口是另一个窗口,那么你将不得不使用 -
driver.switchTo().window("windowName");
您可以从here获取有关此内容的更多信息。