当前位置: 首页 > 知识库问答 >
问题:

在selenium webdriver中处理弹出消息

程鸿煊
2023-03-14

我正在尝试用下面的selenium Webdriver代码点击弹出窗口上的OK按钮

driver.switchTo().alert().accept();

但我正在纠正这一错误

org.openqa.selenium.noAlertPresentException:不存在警报(警告:服务器未提供任何stacktrace信息)命令持续时间或超时:2.22秒构建信息:版本:“2.28.0”,修订版:“18309”,时间:“2012-12-11 20:21:45”系统信息:os.name:“Windows 2003”,os.arch:“x86”,os.version:“5.2”,java.version:“1.6.0_21”会话ID:ddceb914-d74e-44c4-a159-9f1f591e7be1驱动程序信息:

这是窗口的截图

共有1个答案

孔驰
2023-03-14

它可能是一个窗口而不是警报。请尝试以下代码:

String winHandle = driver.getWindowHandle(); //Get current window handle.
for(String windowsHandle : driver.getWindowHandles()) {
     driver.switchTo().window(windowsHandle); //Iterate to the new window handle.
}
/*
Do any action on window or just close it.
*/
driver.close();
driver.switchTo().window(winHandle); //Switch to original window.
 类似资料:
  • 问题内容: 我不确定如何在我的方法中编写弹出消息框的代码。 我试图在我的方法中使用它,但是它不起作用: 问题答案: javax.swing.JOptionPane 这是我想弹出一个信息框时所调用的方法的代码,它将占据屏幕,直到被接受为止: 第一个参数(在此示例中)用于对齐对话框。使其在屏幕上居中,但是可以指定任何内容,而对话框将显示在屏幕中央。 我倾向于使用String来描述调用该框的代码在哪里,

  • 我读了关于JDialogsJOptionPane消息,但我还是无法让它工作。我有一个扩展JFrame的GUI类。我想做的就是在我的程序开始时有一个弹出窗口,通知用户一些事情。在我的主界面中,我创建了以下gui: 在那之后,我要展示橱窗。我在main方法中尝试了以下内容: 我还尝试将弹出窗口添加到GUI类中,如下所示 无论如何,我将如何使此窗口显示?我尝试过的每一种方法都编译了,但什么也没发生。 然

  • 问题内容: 我不确定seleniumwebdriver是否可以处理Javascript警报/弹出窗口。 我有一个类似的场景: 1.用户上传一个xls文件,然后单击“上传”按钮 2.将显示“警报/弹出窗口”。在窗口上单击“确定” 能够自动执行上述方案,但是在运行脚本时会显示“警报/弹出”窗口。 无论如何,他们可以解决JavaScript警报/弹出窗口的解决方法吗? 问题答案: 您也可以尝试 等待警报

  • 问题内容: 下面是我的AutoIt脚本(UI3_Authentication.au3),用于处理Windows身份验证弹出窗口。 以下是我对上述AutoIt exe文件的Selenium代码调用。 当我运行上述Selenium文件时,它将打开页面并弹出身份验证。但这不是在插入用户名和密码。它等待用户输入。 问题答案: 我解决了 其实这是我的坏事。以前,我的代码是这样的: 我在get()之前添加了a

  • 问题内容: 我遇到的一种情况是,单击链接网页会打开一个弹出窗口。并且在弹出窗口打开之后,焦点位于弹出窗口中,并且主窗口被禁用。而且我无法将控件转移到弹出窗口。请看下面的代码。 我无法将控件从父窗口转移到弹出窗口。我知道以下命令。 但是它没有太大帮助。请帮我。 问题答案: 当我需要使用以下弹出窗口,关闭它并返回主窗口时,这是我使用的代码。当然,出于此答案的目的已对其进行了简化。它维护原始窗口(主窗口

  • 问题内容: 我有这个网页,我想使其自动化。这是应用程序的步骤和功能。 使用Selenium启动应用程序 单击某些按钮后,将在主页上弹出一个框架 我可以通过硒Web驱动程序在框架上执行操作 但同一框架中有一个日历图标。 单击日历图标后,将弹出一个带有日历和“确定”按钮的弹出窗口。 我可以在弹出窗口中选择日期,然后单击“确定”按钮,弹出窗口会自动关闭。 现在,我想再次切换到FRame来执行进一步的操作