Heim >Java >javaLernprogramm >Wie gehe ich mit Authentifizierungs-Popups in Selenium WebDriver mithilfe von Java um?
Behandeln Sie das Authentifizierungs-Popup mit Selenium WebDriver unter Verwendung von Java
In Selenium WebDriver wird beim Navigieren zu einer Seite, die eine Authentifizierung erfordert, häufig ein Popup-Fenster ausgelöst . Der in der Frage angegebene Code zeigt jedoch weiterhin das Authentifizierungs-Popup an, selbst nachdem der Benutzer die richtigen Anmeldeinformationen eingegeben hat. Dies kann frustrierend sein und Automatisierungsbemühungen behindern.
Die Lösung liegt in der Verwendung der Methode „authenticateUsing()“ der Klasse „Alert“. Mit dieser Methode können Sie das grundlegende HTTP-Authentifizierungs-Popup umgehen und den Benutzer automatisch authentifizieren. Hier ist der geänderte Code:
import org.openqa.selenium.Alert; import org.openqa.selenium.WebDriver; import org.openqa.selenium.firefox.FirefoxDriver; import org.openqa.selenium.firefox.FirefoxProfile; import org.openqa.selenium.support.ui.ExpectedConditions; import org.openqa.selenium.support.ui.WebDriverWait; public class EnhancedAuthenticationHandling { public static void main(String[] args) { // Set up Firefox profile to accept long username and password FirefoxProfile profile = new FirefoxProfile(); profile.setPreference("network.http.phishy-userpass-length", 255); profile.setPreference("network.automatic-ntlm-auth.trusted-uris", "x.x.x.x"); // Create FirefoxDriver with the modified profile WebDriver driver = new FirefoxDriver(profile); // Navigate to the protected page String login = "username"; String password = "password"; String url = "http://protectedpage.com"; String baseUrl = "http://" + login + ":" + password + "@" + url; driver.get(baseUrl + "/"); // Wait for authentication alert to appear WebDriverWait wait = new WebDriverWait(driver, 10); Alert alert = wait.until(ExpectedConditions.alertIsPresent()); // Authenticate using the provided credentials alert.authenticateUsing(new UserAndPassword(login, password)); } }
In diesem aktualisierten Code wird die Methode „authenticateUsing()“ mit dem richtigen Benutzernamen und Passwort aufgerufen. Dadurch sollte der Benutzer automatisch authentifiziert und das Popup geschlossen werden, sodass die Seite erfolgreich geladen werden kann.
Hinweis:
Das obige ist der detaillierte Inhalt vonWie gehe ich mit Authentifizierungs-Popups in Selenium WebDriver mithilfe von Java um?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!