将应用程序重点放在java中

时间:2011-06-30 11:34:50

标签: java integration automated-tests awtrobot

我希望通过使用Robot类将鼠标/键盘事件发送到我正在测试的Java应用程序来部分自动化一些集成级别测试。我希望用户能够单击一个按钮,并立即自动发送一些键盘事件。

我从我的Robot测试中使用Runtime.exec生成我想要测试的应用程序,然后生成相应的事件。不幸的是,当用户点击按钮时,按钮具有焦点并接收事件,而不是像我希望的那样接收到子进程的事件。我想要一种方法来确保将Robot键盘事件发送到我试图测试的应用程序。

我曾想过获取子进程PID然后使用FG命令将我想要的应用程序带到前台;但这是一种特定于Linux的方法。我更喜欢一种适用于Linux或Windows的方法。

1 个答案:

答案 0 :(得分:1)

我不确切地知道你在测试什么或者你是如何测试的,但你应该研究Sikuli - 它是一种视觉技术,并且有一些方法可以让你自动点击一部分您希望获得焦点的屏幕,或使用App.focus("application name")。我真的推荐它。但是,使用它不会让你在测试程序时使用计算机做其他事情。

希望有所帮助!