Internet explorer 没有来源

Internet explorer 没有来源,internet-explorer,selenium,automated-tests,webdriver,Internet Explorer,Selenium,Automated Tests,Webdriver,我正在尝试为selenium编写一个测试,以便在站点上处理订单。该站点仅与IE兼容,并且禁用鼠标右键。当我在某一点单击continue时,我会看到一个javascript弹出窗口。在此窗口中,我需要选择“是”,但我无法查看源以获取“是”按钮的“id” 有人能帮我识别按钮的ID或显示源代码吗 一旦出现此窗口,就无法访问开发人员工具。如果是javascript警报,则需要执行以下操作: driver.SwitchTo().Alert().Accept(); 其中driver是您正在使用的WebDr

我正在尝试为selenium编写一个测试,以便在站点上处理订单。该站点仅与IE兼容,并且禁用鼠标右键。当我在某一点单击continue时,我会看到一个javascript弹出窗口。在此窗口中,我需要选择“是”,但我无法查看源以获取“是”按钮的“id”

有人能帮我识别按钮的ID或显示源代码吗


一旦出现此窗口,就无法访问开发人员工具。

如果是javascript警报,则需要执行以下操作:

driver.SwitchTo().Alert().Accept();
其中driver是您正在使用的
WebDriver
的实例

----编辑----


有3种类型的javascript弹出窗口:

  • 警报-它只有“是”按钮
  • 确认-它有“是”和“否”按钮
  • 提示-它有输入区来写东西和“是”和“否”按钮

  • 您需要确保显示的是哪种类型的弹出窗口,并采取相应的行动。

    当您说“js窗口”时,您是指浏览器中的新窗口或类似小部件的东西吗?我得到以下信息
    org.openqa.selenium.NoAlertPresentException:没有激活的警报
    这可能是页面加载时出现警报的问题吗,还是在页面加载之前?@BON听起来像是您的代码在弹出窗口呈现之前触发。我的猜测是javascript弹出窗口在document.ready启动,但是selenium会在加载页面时启动,因此您可以在启动警报脚本之前查找警报。请参阅我的编辑以获取解决方案
    JavascriptExecutor js = (JavascriptExecutor) driver;
    if(js.executeScript("document.readyState")== "complete")
    {
      thread.sleep(500);
      driver.SwitchTo().Alert().Accept();
    }