因此,我尝试使用机器人(按键或鼠标)来模拟应用程序的某些测试。但是,这个程序不允许我这样做,我很确定它是一个安全功能。我正在使用的应用程序是TEMS Investigation,我正在尝试模拟记录并停止录制我自己的一些自动化测试。我用来自动化这些测试的程序无法访问TEMS,所以没有机器人我就无法做到这一点。所以我的问题是:
1)如何覆盖妨碍我使用机器人的任何内容 2)如果我这样做会被视为非法吗?我不需要违反任何法律......我只是想完成我的测试!洛尔
我甚至无法运行一些简单的事情:
Robot r = new Robot();
r.keyPress(KeyEvent.VK_F2);
r.keyRelease(KeyEvent.VK_F2);
它会运行,因为我已经下载了一些软件来告诉我我正在按什么键....当TEMS应用程序有焦点时,它不会被识别出来。
更新:我发现使用记事本我不能使用任何键(如“ALT + F“)执行任何菜单选项。它甚至没有拉出”文件“ 菜单。我能够模拟文本输入,而不是上下文菜单。 真正奇怪的是,我甚至不能在TEMS时使用mouseMove() 有重点
答案 0 :(得分: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
之前,这两个键必须robot.keyRelease
。