-1

Ich habe ein Problem mit meinem Automatisierungsskript. Ich logge mich in eine URL in meinem Skript ein. Wenn ich das manuell mache, logge ich mich normalerweise ein, aber wenn ich Automatisierungsskript verwende, fragt es nach Verifikationscode auf meiner Post.Profilprobleme mit google chrome

Ich dachte, wenn ich das Chrom-Standardprofil für die Anmeldung verwenden soll, dann sollte dieses Problem nicht auftreten. Aber es hat mir nicht geholfen.

Kann jemand irgendeine Lösung vorschlagen?

Antwort

0

Wie bekannt, startet Webdriver immer mit frischen, Standardprofil. Das ist der Grund, warum es um Verifizierung geht, aber nicht das Gleiche, wenn es manuell geschieht. Um dies zu vermeiden, können Sie das Chrome-Profil angeben, das manuell für den Web-Treiber verwendet wird.

In Java können wir dies mithilfe von ChromeOptions und Chrome Profile tun. Wechseln Sie in Chrome zu chrome: // version/Es wird der Profilpfad und der ausführbare Pfad angezeigt.

Wenn ich daran arbeite, wird \ Local \ Google \ Chrome \ Benutzerdaten \ Profil 3 angezeigt, wenn Sie zu chrome: // version/in normal chrome navigieren. In diesem Profil habe ich zu stackoverflow und gespeicherten Anmeldeinformationen navigiert. So unten Code verwendete

Map<String, Object> prefs = new HashMap<String, Object>(); 
prefs.put("binary", "C:\\Program Files (x86)\\Google\\Chrome\\Application\\chrome.exe"); 

System.setProperty("webdriver.chrome.driver", "E:\\selenium_setups\\poi-3.12\\chromedriver.exe"); 
ChromeOptions options = new ChromeOptions(); 

options.setExperimentalOption("prefs", prefs); 
options.addArguments("user-data-dir=C:\\Users\\murali\\AppData\\Local\\Google\\Chrome\\User Data\\Profile 3"); 
DesiredCapabilities capabilities = DesiredCapabilities.chrome(); 
capabilities.setCapability(ChromeOptions.CAPABILITY, options); 
WebDriver driver = new ChromeDriver(capabilities); 

//WebDriver driver = new ChromeDriver(options); 
driver.get("http://stackoverflow.com/"); 

Gemäß meinem Verständnis, ausgenommen i stackoverflow.com Seite angemeldet als angezeigt, sondern für die erste Zeit, ich bin nicht eingeloggt so Kreuz mit Chrom überprüft:.. // Version/in Chrom Der Profilpfad wird vom Treiber geöffnet und als \ Local \ Google \ Chrome \ Benutzerdaten \ Profil 3 \ Standard angezeigt. Dann loggte man sich manuell in das Profil ein, das vom Webdriver geöffnet und durch Schließen ausgeführt wurde.

Schließlich wird Seite als eingeloggt angezeigt. So kann es in Java sein, ich hoffe, es wird Ihnen helfen.

Vielen Dank, Murali