【问题标题】:Selenium/Java/EdgeDriver: Modal window dialog box stops execution of test scriptSelenium/Java/EdgeDriver:模态窗口对话框停止执行测试脚本
【发布时间】:2017-06-02 13:17:45
【问题描述】:

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

这里是与问题相关的代码sn-p:

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

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

任何帮助将不胜感激。

【问题讨论】:

  • 如果您逐个键入图像字符的路径,这可能会起作用。我们有相同的场景来上传图像并使用机器人类并一个一个地输入单个字符并且它起作用了。

标签: javascript java eclipse selenium selenium-edgedriver


【解决方案1】:

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-10-26
    • 1970-01-01
    • 2020-12-10
    • 1970-01-01
    • 1970-01-01
    • 2021-07-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多