【发布时间】:2016-08-02 15:01:25
【问题描述】:
我遇到了这种情况 我有一个文件上传场景..这里我不能使用 sendKeys 方法发送文件的绝对路径,因为没有输入元素,我只有一个“浏览”按钮来从本地文件夹中选择文件
为了处理这个问题,我在使用 selenium webdriver 单击“浏览器”按钮后使用机器人类和以下逻辑:
StringSelection sc = new StringSelection(file); >>file is the one to upload
Toolkit.getDefaultToolkit().getSystemClipboard().setContents(sc, null);
try {
Robot robot= new Robot();
robot.delay(3000);
robot.keyPress(KeyEvent.VK_ENTER);
robot.keyRelease(KeyEvent.VK_ENTER);
robot.delay(2000);
robot.keyPress(KeyEvent.VK_CONTROL);
robot.keyPress(KeyEvent.VK_V);
robot.keyRelease(KeyEvent.VK_V);
robot.keyRelease(KeyEvent.VK_CONTROL);
robot.delay(3000);
robot.keyPress(KeyEvent.VK_ENTER);
robot.keyRelease(KeyEvent.VK_ENTER);
}
这在 chrome 和 firefox 中运行良好……但在 Internet Explorer 11 中则不行 在 IE 中打开模型对话框,但它没有粘贴假定要上传的文件的路径 有没有人在 IE 中遇到这个问题 我们是否需要做任何额外的事情才能在 IE 中做到这一点 请告诉我
谢谢, 穆萨菲尔
【问题讨论】:
-
我也有这个问题。如果您当时找到了解决方案,可以在这里分享解决方案吗?
标签: java file-upload selenium-webdriver awtrobot