2017-05-24 3 views
0

Ich versuche, eine Intranet-Website mit Selenium zu öffnen, die zu einem anderen Link für die Anmeldung umgeleitet wird und bei gültiger Anmeldung zurück zur ursprünglichen URL. Zum Beispiel - Wenn ich Webdriver starte und zur Original-Site-URL https://DemoOriginalWebsite.Com navigiere, wird der Browser zu https://Validateyourselfbeforeaccessing.com:9030 umgeleitet und zeigt unten das Popup-Fenster zur Eingabe der Benutzer-ID und des Passworts.So füllen Sie die Authentifizierung erforderlich Popup in Chrom mit Selenium C#

Popup window

Ich habe versucht, wie im folgenden Anmeldeinformationen übergeben, aber hat nicht funktioniert. Versuchen

1:http://username:[email protected]

Versuchen 2:https://username:pswdValidateyourselfbeforeaccessing.com:9030

Die Authentifizierungs-URL nicht direkt zugegriffen werden kann.

Mein eigentlicher Code:

IWebDriver chromeDriver; 
ChromeOptions options = new ChromeOptions(); 
options.AddArgument("disable-infobars"); 
options.AddUserProfilePreference("credentials_enable_service", false);   
options.AddUserProfilePreference("profile.password_manager_enabled", false); 
chromeDriver = new ChromeDriver(options); 
chromeDriver.Manage().Window.Maximize();  chromeDriver.Navigate().GoToUrl(@"http://username:[email protected]"); 

Irgendwelche Vorschläge bitte.

Antwort

0

müssen Sie AutoIT verwenden. Installieren Sie AutoIT, schreiben Sie das Skript in AutoIT und exportieren Sie es als eine .exe-Datei. Diese .exe Sie haben in Ihrem Selen nennen

WinWait("Untitled - Google Chrome", "" , 10)) //This will wait for 10 seconds for window with the specified title 
WinActivate("Untitled - Google Chrome"); // This will send the focus of the cursor to the window with the specified title 
Send("username"); 

//1st argument : moves the cursor's focus from Username textbox to Password text box. 
//2nd argument : false, over here tell that it is not a text but raw key 
Send("{TAB}", false); 
Send("password"); 
Send("{Enter}", false);// this will mimic the action of pressing enter button. 
+1

Danke. Lass es mich versuchen. –

+0

Coole Bro. AutoIT ist erstaunlich wie Sie sind. Ich habe Web-Treiber in Internet Explorer geändert, da es mir richtige Windows Popup gibt. Wird meinen Arbeitscode als Referenz zu den Lesern hinzufügen. Vielen Dank. –

+1

Habe auch ein informatives Video. https://youtu.be/civzNtKTCD0 –

1

Hier ist, wie ich herausgefunden.

1 - AutoIt NuGet-Paket zum Projekt hinzugefügt.

2 - Gebrauchte wie folgt:

IWebDriver driverIE = new InternetExplorerDriver(); 
driverIE.Manage().Window.Maximize(); 
driverIE.Navigate().GoToUrl(@"https://DemoOriginalWebsite.Com"); 
AutoItX.ControlFocus("Windows Security", "", "Edit1"); 
AutoItX.ControlSetText("Windows Security", "", "Edit1","userid"); 
AutoItX.ControlFocus("Windows Security", "", "Edit2"); 
AutoItX.ControlSetText("Windows Security", "", "Edit2", "password"); 
AutoItX.ControlClick("Windows Security", "", "Button2"); 
//Do your work. 
driverIE.Dispose(); 

Tutorials Ich folgte. Tutorial 1 und Tutorial 2

Verwandte Themen