Selenium Robot类在文件上载案例中工作不一致

Selenium Robot类在文件上载案例中工作不一致,selenium,selenium-webdriver,awtrobot,Selenium,Selenium Webdriver,Awtrobot,我有两个检查文件上传的测试用例,它们使用的代码与下面所写的相同。对于1个测试用例,它粘贴文件上传的正确路径,但对于其他测试用例,它仅粘贴字符“v” 还有,如果我们在jenkins上的远程机器上运行测试用例,有人知道为什么robot类不能工作吗 //文件上传测试用例的代码行 Robot rob = new Robot(); StringSelection ss = null; ss = new StringSelection("C:\\repository\\A\\B\\C\\resources\

我有两个检查文件上传的测试用例,它们使用的代码与下面所写的相同。对于1个测试用例,它粘贴文件上传的正确路径,但对于其他测试用例,它仅粘贴字符“v” 还有,如果我们在jenkins上的远程机器上运行测试用例,有人知道为什么robot类不能工作吗

//文件上传测试用例的代码行

Robot rob = new Robot();
StringSelection ss = null;
ss = new StringSelection("C:\\repository\\A\\B\\C\\resources\\no_fog.png");
rob.setAutoDelay(2000);
Toolkit.getDefaultToolkit().getSystemClipboard().setContents(ss, null);
rob.setAutoDelay(1000);
rob.keyPress(KeyEvent.VK_CONTROL);
rob.keyPress(KeyEvent.VK_V);
rob.keyRelease(KeyEvent.VK_CONTROL);
rob.keyRelease(KeyEvent.VK_V);
rob.setAutoDelay(1000);
rob.keyPress(KeyEvent.VK_ENTER);
rob.keyRelease(KeyEvent.VK_ENTER);
rob.setAutoDelay(1000);

有人能在这方面提供帮助吗?

我已经使用Robot类进行文件上传,它对我来说很好。试试这个:

Robot robot = new Robot();
StringSelection sel = new StringSelection("Path of image");
Toolkit.getDefaultToolkit().getSystemClipboard().setContents(sel, null);

 robot.delay(300);

  // Press Enter
 robot.keyPress(KeyEvent.VK_ENTER);
 robot.keyRelease(KeyEvent.VK_ENTER);

  // Press CTRL+V
 robot.keyPress(KeyEvent.VK_CONTROL);
 robot.keyPress(KeyEvent.VK_V);

// Release CTRL+V
 robot.keyRelease(KeyEvent.VK_CONTROL);
 robot.keyRelease(KeyEvent.VK_V);
 robot.delay(300);

 // Press Enter 
 robot.keyPress(KeyEvent.VK_ENTER);
 robot.keyRelease(KeyEvent.VK_ENTER);

我使用Robot类进行文件上传,它对我来说运行良好。请尝试以下方法:

Robot robot = new Robot();
StringSelection sel = new StringSelection("Path of image");
Toolkit.getDefaultToolkit().getSystemClipboard().setContents(sel, null);

 robot.delay(300);

  // Press Enter
 robot.keyPress(KeyEvent.VK_ENTER);
 robot.keyRelease(KeyEvent.VK_ENTER);

  // Press CTRL+V
 robot.keyPress(KeyEvent.VK_CONTROL);
 robot.keyPress(KeyEvent.VK_V);

// Release CTRL+V
 robot.keyRelease(KeyEvent.VK_CONTROL);
 robot.keyRelease(KeyEvent.VK_V);
 robot.delay(300);

 // Press Enter 
 robot.keyPress(KeyEvent.VK_ENTER);
 robot.keyRelease(KeyEvent.VK_ENTER);