我需要使用 Java 阅读 Web 驱动程序中弹出窗口上显示的文本。我能够处理关闭的弹出窗口。我不知道如何阅读弹出窗口上显示的文本并在控制台中打印它。
我无法为此提供任何 HTML 代码,因为它是一个模态弹出窗口。
请帮助我。帮助将不胜感激。
我需要使用 Java 阅读 Web 驱动程序中弹出窗口上显示的文本。我能够处理关闭的弹出窗口。我不知道如何阅读弹出窗口上显示的文本并在控制台中打印它。
我无法为此提供任何 HTML 代码,因为它是一个模态弹出窗口。
请帮助我。帮助将不胜感激。
鉴于您的屏幕截图,您尝试自动化的“模式弹出窗口”看起来是由 JavaScript alert() 函数生成的。如果是这种情况,下面的代码或类似的代码应该可以工作。
// WARNING! Untested code written from memory without
// benefit of an IDE! May not be exactly correct!
// Switch the driver context to the alert
Alert alertDialog = driver.switchTo().alert();
// Get the alert text
String alertText = alertDialog.getText();
// Click the OK button on the alert.
alertDialog.accept();
您以前使用过 WebDriverWait 对象吗?要扩展上一个答案,您也许可以做类似的事情,但我没有测试过:
WebDriverWait wait = new WebDriverWait(5, TimeUnit.Seconds);
element.click();
// Wait for the dialog to show
wait.until(ExpectedConditions.alertIsPresent());
// Switch the driver context to the alert
Alert alertDialog = driver.switchTo().alert();
// Get the alert text
String alertText = alertDialog.getText();
// Click the OK button on the alert.
alertDialog.accept();
此外,您可能必须在收到文本后切换回警报。希望这可以帮助。