我遇到了一些使用 JFileChoosers 的测试用例的问题。我正在寻找一种在运行 JUnit 测试时以编程方式摆脱文件选择器窗口(而不是按 ESC 7 次)的方法。
我试图在我的测试用例中包含以下内容:
Robot robot = new Robot();
robot.delay(1000);
robot.keyPress(KeyEvent.VK_ESCAPE);
这似乎不起作用。你有什么建议吗?
提前致谢。
我遇到了一些使用 JFileChoosers 的测试用例的问题。我正在寻找一种在运行 JUnit 测试时以编程方式摆脱文件选择器窗口(而不是按 ESC 7 次)的方法。
我试图在我的测试用例中包含以下内容:
Robot robot = new Robot();
robot.delay(1000);
robot.keyPress(KeyEvent.VK_ESCAPE);
这似乎不起作用。你有什么建议吗?
提前致谢。
只是一个猜测,但听起来Robot
你在启动JFileChooser
. 如果没有记忆,许多 JFileChooser 方法会阻塞当前线程,直到用户选择了一个文件。
Robot
如果您还没有,请尝试在单独的线程中启动。
编辑:
例如:
// Start Robot in a new thread.
new Thread(new Runnable() {
@Override
public void run() {
Robot robot = new Robot();
robot.delay(1000);
robot.keyPress(KeyEvent.VK_ESCAPE);
}
}).start();
// Launch JFileChooser.
jFileChooser.getSelectedFile();