Selenium/Java/EdgeDriver: 模态 window 对话框停止执行测试脚本

Selenium/Java/EdgeDriver: Modal window dialog box stops execution of test script

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

这是与问题相关的代码片段:

    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); 

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

如有任何帮助,我们将不胜感激。

经过一些广泛的调查和大量尝试变通办法后,这似乎是一个普通的 showstopper。 Microsoft 尚未开发足以区分根文件资源管理器和 Web 文件资源管理器的 WebDriver。可以在此处找到更多详细信息:Edge Upload File control using Selenium