我有一个场景可以验证单击“打印”链接后“打印属性”对话框(Windows 组件)是否正确打开。了解 Java 中的 Robot 实用程序类,它可以模拟 Escape/Enter 等键盘事件以在该窗口上进行操作。
有什么方法可以验证打开的新对话框是打印对话框 - 验证对话框标题的东西,即打印或从该窗口对话框或其他内容中检索文本else 将确认对话框是一个打印对话框。
最佳答案
打印对话框来自操作系统,selenium 无法处理(目前)。因此,您将无法检查是否存在。我能想到的唯一方法是使用 java.awt.Robot,发送 VK_ESCAPE 并断言测试继续。
作为初学者,您可以试试这个:
Runnable r = new Runnable() {
@Override
public void run() {
try {
Robot r = new Robot();
r.delay(1000);
r.keyPress(KeyEvent.VK_ESCAPE);
r.keyRelease(KeyEvent.VK_ESCAPE);
} catch (Exception ex) {
ex.printStackTrace();
}
}
};
Actions actions = new Actions(getDriver());
actions.sendKeys(Keys.CONTROL).sendKeys("p");
Thread t = new Thread(r);
t.start();
actions.perform();
//some stupid asserts that we reached here
关于java - Selenium WebDriver : Verify Print Window dialog displayed on the page,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22014233/