webdriver当窗口最小化或最大化窗口时如何关注文件上传窗口

时间:2013-05-17 07:16:11

标签: file-upload selenium webdriver

大家,我对文件上传有疑问。

我用pc A来远程登录pc B;

PS:pc B有eclipse和webdriver代码;

我最大化远程窗口(PC B),文件上传窗口可以关注。当我

最小化或关闭远程窗口(pc b),文件上传风无法打开。

这是我的代码。

CommonAction.findElement(driver, "SWFUpload_0", "id").click();
setClipboardData(fileUrl);
Robot robot = new Robot();
robot.delay(1000);
robot.keyPress(KeyEvent.VK_ALT);
robot.keyPress(KeyEvent.VK_N);
robot.keyRelease(KeyEvent.VK_ALT);
robot.keyRelease(KeyEvent.VK_N);
robot.keyPress(KeyEvent.VK_CONTROL);
robot.keyPress(KeyEvent.VK_V);
robot.keyRelease(KeyEvent.VK_V);
robot.keyRelease(KeyEvent.VK_CONTROL);
robot.delay(1000);
robot.keyPress(KeyEvent.VK_ENTER);
robot.keyRelease(KeyEvent.VK_ENTER);

使用

robot.keyPress(KeyEvent.VK_ALT);
robot.keyPress(KeyEvent.VK_N);

不起作用,无法专注于文件上传窗口。

Selenium版本:2.27 操作系统:风7 浏览器:Chrome浏览器 浏览器版本:26

感谢所有

2 个答案:

答案 0 :(得分:0)

  • 您无法通过selenium处理Windows事件。

  • 这是硒的主要缺点。

  • 你可以使用“sikuli + selenium”意味着必须使用SIKULI的API来处理这个事件。

干杯!!

答案 1 :(得分:0)

让我帮助你。 Javascript警报使您的浏览器专注于窗口。只需添加此代码即可。 你很高兴去!

((JavascriptExecutor) driver).executeScript("alert('Focus window')");
driver.switchTo().alert().accept();