Java awt.Robot无法在虚拟机内部工作?
作者:互联网
我正在尝试使用java.awt.Robot类在虚拟机内进行测试.如果我在我的主机上测试它,一切都按预期工作,但是当我在虚拟机中运行相同的程序时,没有任何反应,也没有错误/异常.我曾尝试在不同的计算机上运行Windows XP或Windows 7的内部虚拟机,但从未运行过.
我在机器上测试的代码非常简单:
try
{
final Robot robot = new Robot();
robot.mouseMove(500, 500);
}
catch (AWTException e)
{
e.printStackTrace();
}
当我运行它时,程序刚刚结束,鼠标不动.机器人类是否在虚拟机中不起作用?如果没有,是否有另一种模拟鼠标移动/点击的方法?您是否曾尝试在虚拟机中使用此类,如果它有效,您的设置是什么?
解决方法:
IT将无法工作……我们遇到的类似问题…当您在笔记本电脑/台式机上打开虚拟机时,您的测试脚本将会通过.
试试这个……开始你的测试并关闭VNC / RDC,然后检查你的结果(失败).
原因是……这个Robot类正在寻找物理键盘,但是当我们在CI上运行测试套件时,我们没有物理键盘…
所以它不会工作.
替代解决方案:使用Selenium方法
标签:awtrobot,java,virtual-machine 来源: https://codeday.me/bug/20191007/1865608.html