0

我目前正在为我们的 Web 应用程序编写一个测试脚本,该脚本测试使用 Microsoft Edge 和 EdgeDriver 上传个人资料图片图像。当我初始化添加照片按钮的单击操作时,脚本完全停止执行。我认为这是一个父/子窗口或 javascript 问题,但现在已经被这个问题难住了一段时间。我让它在 Chrome/Firefox/IE11 中工作。下面的代码应该点击按钮弹出模态窗口,将路径复制到所需的图像,然后将路径粘贴到对话框中。

以下是与该问题相关的代码片段:

    driverElement = driver.findElement(By.xpath("//span[text()='Add Photo']")); 
    actions.moveToElement(driverElement).click().build().perform(); //click button for modal window

    //find the image and upload it
    pathToImage = new StringSelection("C:\\path\\to\\image");
    Toolkit.getDefaultToolkit().getSystemClipboard().setContents(pathToImage, null);
    bot = new Robot();

    Thread.sleep(500);
    bot.keyPress(KeyEvent.VK_CONTROL);
    bot.keyPress(KeyEvent.VK_V);

    bot.keyRelease(KeyEvent.VK_CONTROL);
    bot.keyRelease(KeyEvent.VK_V);
    Thread.sleep(500);

    bot.keyPress(KeyEvent.VK_ENTER);
    bot.keyRelease(KeyEvent.VK_ENTER); 

单击操作后,所有执行都停止,即使在调试模式下,当我尝试手动跨步到下一行执行时也是如此。

任何帮助将不胜感激。

4

1 回答 1

0

经过一些广泛的调查和大量尝试的解决方法后,这似乎是一个简单的展示。Microsoft 尚未开发出足以区分根文件资源管理器和 Web 文件资源管理器的 WebDriver。更多细节可以在这里找到:Edge Upload File control using Selenium

于 2017-06-05T16:31:27.157 回答