Tag: alert

如何调试Firefox警报框自动关闭并且无法检测Serenity BDD中的警报?

[main] ERROR net.serenitybdd.core.Serenity – 不存在警报(警告:服务器未提供任何堆栈跟踪信息) 我的问题与这个“ 用Selenium WebDriver未检测到的Firefox警报框 ”完全相似 但我无法找到解决方案。 即使我已经尝试了所有类型的等待,更改了Firefox版本并尝试了共享链接中提到的解决方案。 但是,要么我无法实现它,要么它无法正常工作。 执行此任务时,当我单击“更新”按钮并且工作正常时,会弹出手动弹出窗口。 但是,当我使用自动弹出显示执行相同操作并立即在几分之一秒内自动关闭时,平静会抛出无警报未找到的错误。 此外,自动化期间出现的警报窗口与手动执行期间发现的警报窗口略有不同。 如果您想在Windows中看到差异,请参阅上面分享的链接。 public void i_click_update_button() throws InterruptedException { btn_update.waitUntilClickable().click(); // clicks the button & pop-up comes } public void Accept_POP_UP() throws InterruptedException { getAlert().accept(); // code to accept the alret. I have already tried implementing wait & everything. problem is pop-up […]

Java fxml app无法正常工作 – 无法找到符号错误

我从https://github.com/HassanAlthaf/AlarmApplication下载了一个java fxml应用程序,当我尝试运行它时,从MainView.java类中获取“找不到符号”错误。 以下是Mainview.java文件中的代码 import java.net.URL; import java.util.ResourceBundle; import javafx.event.ActionEvent; import javafx.fxml.FXML; import javafx.fxml.Initializable; import javafx.scene.control.Alert; import javafx.scene.control.Alert.AlertType; import javafx.scene.control.TextField; public class MainView implements Initializable { @FXML private TextField hoursField; @FXML private TextField minutesField; @FXML private TextField secondsField; private final AlarmController alarmController; @FXML private void startAlarm(ActionEvent event) { int response = this.alarmController.startAlarm( this.hoursField.getText(), this.minutesField.getText(), this.secondsField.getText() ); […]

使用Selenium WebDriver未检测到Firefox警报框

错误net.serenitybdd.core.Serenity – 不存在警报(警告:服务器未提供任何堆栈跟踪信息) 当我尝试使用此代码检测警报时出现此错误: Alert alertBox = getDriver().switchTo().alert(); 警报弹出窗口确实显示,但是当我通过Selenium WebDriver和manualy执行操作时,它不完全相同。 这可能是问题的根源,但我不知道为什么弹出窗口不同。 手动完成时的警报 使用Selenium完成警报 这是调用警报的函数: function confirm_remove() { return window.confirm(“Alert message”); } 谢谢你的帮助 更新: 好的,我找到了一种绕过问题但没有真正解决问题的方法。 我尝试插入等待和睡眠,就像你建议我一样,但它没有解决问题,警报仍未被发现。 在我的项目中,我使用的是一个Test类,它调用我的Steps类中的步骤,该类从我的Page类调用webElements。 事情是,在单击“删除”按钮的步骤和管理警报的步骤之间,Selenium会丢失警报的处理。 所以我重新组合了这两个步骤,Selenium似乎很好地处理了警报。

在网站完全打开之前尝试放入登录凭据时“无警报打开”

我正在尝试访问一个网站,但是要首先访问该网站我需要输入用户名和密码,之后完整的网站将被打开。 当我尝试通过“alert.sendkeys”发送用户名和密码时,它会显示“No alert open”错误。 请注意网站只有在您首先输入用户名和密码然后点击“登录”进行授权才会打开。我的浏览器是chrome,版本:64,Chrome驱动程序版本是:2.38。 这是我的代码: public static void launchWebsite(String URL) { driver.get(URL); try { WebDriverWait wait = new WebDriverWait(driver, 2); wait.until(ExpectedConditions.alertIsPresent()); Alert alert = driver.switchTo().alert(); System.out.println(alert.getText()); alert.sendKeys(“website”); alert.sendKeys(“grren”); } catch (Exception e) { System.out.println(“No alertis present”); //exception handling } }

Selenium自动接受警报

有谁知道如何禁用它? 或者如何从已自动接受的警报中获取文本? 这段代码需要工作, driver.findElement(By.xpath(“//button[text() = \”Edit\”]”)).click();//causes page to alert() something Alert alert = driver.switchTo().alert(); alert.accept(); return alert.getText(); 但反而给出了这个错误 No alert is present (WARNING: The server did not provide any stacktrace information) Command duration or timeout: 2.14 seconds 我正在使用FF 20和Selenium 2.32

如何从servlet中显示jsp中的警报,然后重定向到另一个jsp?

我试过这个但是没有显示消息只重定向 login.jsp Entrar Login_Servlet response.setContentType(“text/html;charset=UTF-8”); PrintWriter out = response.getWriter(); String userid= request.getParameter(“idUser”); String password = request.getParameter(“password”); Login_Service login_Service = new Login_Service(); boolean result = login_Servicio.aut(userid, password); Usuario user = login_Servicio.getUsuariosByUsuario(userid); if(result == true){ request.getSession().setAttribute(“user”, user); response.sendRedirect(“vistas/Inicio.jsp”); } else{ out.println(“”); out.println(“alert(‘User or password incorrect’);”); out.println(“”); response.sendRedirect(“index.jsp”); } 是否可以显示这样的消息? 如果是这样我做错了?

如何在Selenium webdriver中等待警报?

可能重复: selenium 2.4.0,如何检查是否存在警报 我使用以下代码关闭警报窗口: Alert alert3 = driver.switchTo().alert(); alert3.dismiss(); 主窗口打开几秒后出现警报。 我该如何等待并检查警报是否出现?