0

所以我正在尝试使用机器人(按键或鼠标)来模拟应用程序的一些测试。但是,这个程序不允许我这样做,我很确定这是一个安全功能。我正在使用的应用程序是TEMS Investigation,我正在尝试为我拥有的一些自动化测试模拟记录并停止记录。我用来自动化这些测试的程序无法访问 TEMS,所以没有机器人我无法做到这一点。所以我的问题是:

1)我怎样才能覆盖阻止我使用机器人的任何东西。
2)如果我这样做会被认为是非法的吗?我不需要违反任何法律……我只想完成我的测试!哈哈

我什至不能运行像这样简单的东西:

Robot r = new Robot();

r.keyPress(KeyEvent.VK_F2);
r.keyRelease(KeyEvent.VK_F2);

它会运行,因为我已经下载了一些软件来告诉我我正在按什么键......只是在 TEMS 应用程序有焦点时不会被识别。

更新:我发现使用记事本我不能使用任何键(如“ALT + F”)来执行任何菜单选项。它甚至没有拉出“文件”菜单。我能够模拟输入文本,而不是上下文菜单。真正奇怪的是,当 TEMS 具有焦点时,我什至不能使用 mouseMove()

4

1 回答 1

0

听起来您的运行时不了解 TEMS 应用程序。如果你在你的java代码中启动它应该可以工作。例如以下:

Runtime.getRuntime().exec("notepad");
robot.keyPress(KeyEvent.VK_J);

将打开记事本并输入字母 J。尝试执行 TEMS,然后发送按键。

不,这并不违法。

更新:

要在记事本中打开文件菜单,您可以执行以下操作:

robot.keyPress(KeyEvent.VK_ALT);
robot.keyPress(KeyEvent.VK_F);

两个键必须pressed在 a 之前放在一起robot.keyRelease

于 2013-10-21T16:40:38.547 回答