编程语言
首页 > 编程语言> > Java awt.Robot无法在虚拟机内部工作?

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