Mein Test überprüft, ob der Benutzer sich auf der Site anmelden kann. Ich schrieb einen Code, um zu alarmieren, der funktioniert, aber Teile in catch
zeigt. Ich habe versucht, Alarm ohne try
und catch
zu schreiben, zeigt aber einen Fehler an.Warnung wird nicht angezeigt
So schreiben Sie eine Warnung ohne try
und catch
und Warnung, um angezeigt zu werden (Test zu bestehen).
org.openqa.selenium.TimeoutException: Expected condition failed: waiting for alert to be present (tried for 5 second(s) with 500 MILLISECONDS interval)
Dies ist mein Code:
public void getMessage() {
//Verify that is message preview
try {
WebDriverWait wait = new WebDriverWait(driver, 5);
wait.until(ExpectedConditions.alertIsPresent());
Alert alert = driver.switchTo().alert();
System.out.println(alert.getText());
alert.accept();
Assert.assertTrue(alert.getText().contains("ERROR: Invalid login credentials."));
} catch (Exception e) {
System.out.println("Alert is not displayed");
}
Also, was ist die Frage? – Andersson
Meine Vermutung ist, dass die Warnung ein HTML-Dialog und keine JS-Warnung ist. Wenn die Warnung erscheint, klicken Sie mit der rechten Maustaste darauf. Wenn Sie das Kontextmenü mit der rechten Maustaste aufrufen und Inspizieren können, ist es HTML-basiert und keine Warnung. – JeffC
Ja, das ist html.
FEHLER : Ungültige Anmeldedaten. –