Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/376.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java AWT机器人-我能';找不到元素_Java_Selenium_Awtrobot - Fatal编程技术网

Java AWT机器人-我能';找不到元素

Java AWT机器人-我能';找不到元素,java,selenium,awtrobot,Java,Selenium,Awtrobot,我正在使用WebDriver API创建一个应用程序,用于进行非回归测试 现在,我必须在我的计算机上(使用Windows的navigator)找到一个元素(fic),而我不能(或者我只是失败了:p)使用WebDriver 所以我在寻找,我找到了awt,机器人。但是这个机器人只需点击[px,px]位置。。我怎么说‘单击搜索栏,单击名为“A”的元素,单击“确定”按钮’(所有这些元素都是Windows的元素。) 谢谢你的帮助 解决方案(对我来说)是使用名称获取窗口的位置+尺寸 int[0]=X int

我正在使用WebDriver API创建一个应用程序,用于进行非回归测试

现在,我必须在我的计算机上(使用Windows的navigator)找到一个元素(fic),而我不能(或者我只是失败了:p)使用WebDriver

所以我在寻找,我找到了awt,机器人。但是这个机器人只需点击[px,px]位置。。我怎么说‘单击搜索栏,单击名为“A”的元素,单击“确定”按钮’(所有这些元素都是Windows的元素。) 谢谢你的帮助

解决方案(对我来说)是使用名称获取窗口的位置+尺寸

int[0]=X

int[1]=Y

int[2]=宽度
int[3]=高度

第二次,我在正确的位置使用awt.Robot和moveMouse(),然后单击()或放置正确的角色

对于“/”斜杠,我使用:

robot.keyPress(KeyEvent.VK_SHIFT)
robot.keyPress(KeyEvent.VK_COLON)
robot.keyrease(KeyEvent.VK_COLON)
robot.keyerelease(KeyEvent.VK_SHIFT)


我希望这对其他人有所帮助。

Webdriver无法做到这一点,正如您所发现的,因为它只能与web浏览器元素交互,就像在web浏览器中呈现的那些元素一样。使用
Robot()
类是正确的方法,但您必须以艰难的方式完成,并提供要单击的像素位置。好的,我找到了一种方法,THX!!但是现在我如何按“\”来创建路径呢?当我这样做时:“robot.keyPress(KeyEvent.VK_BACK_SLASH);”这会产生错误:“java.lang.IllegalArgumentException:无效的键代码”,但是使用代码“robot.keyPress(KeyEvent.VK_COLON);”它会工作。。为什么?