2017-06-01 4 views
0

Ich habe ein Szenario, wie unterWindows im Selenium Umgang WebDriver java

1. Login to the application 
2. click on a button (say Buy) 
3. This will take me to a new window opened with a new URL automatically 
4. Perform actions in the new window 
5. Quit 

bitte den genauen Code geben Sie bitte daran zu arbeiten. Ich habe versucht, mit dem vorhandenen Code, der in der Website vorhanden ist, die für mich nicht funktioniert

+0

http://toolsqa.com/selenium-webdriver/switch-commands/ – Priya

+0

Ich hoffe, dass der obige Code für Sie arbeiten sollte. Ermöglicht Ihnen, zum untergeordneten Fenster zu wechseln und Vorgänge auszuführen. es hat auch Praxisbeispiel, das Spitze zu Zehe Informationen über Wechsel zwischen Fenstern gibt – Priya

+0

Bitte sehen https://stackoverflow.com/help/how-to-ask. Zumindest sollten Sie erwähnen, welche Schritte Sie unternommen haben, die für Sie nicht geklappt haben und welcher Fehler aufgetreten ist. Kopieren Sie einfach und fügen Sie jedes Problem hinzu, das Sie nirgendwohin bringt und würde Stimmen herunterziehen. – demouser123

Antwort

0

Sie auf folgendes Muster ausprobieren können: -

Webdriver driver = new ChromeDriver(); 
    driver.get("URL of application"); 
    driver.findElement(By.id("username").sendKeys("user1"); 
    driver.findElement(By.id("password").sendKeys("pass1"); 
    driver.manage().timeouts().implicitlyWait(3, TimeUnit.SECONDS); 
    driver.findElement(By.xPath("xpath of button").click(); 

// jetzt können Sie umschalten, um Pop-up und entsprechend akzeptieren oder abweisen

es
driver.switchTo().alert().accept(); 

    driver.quit(); 

Falls Sie die Gemeinschaft SO die URL der Anwendung dann nur vollständiger Code zur Verfügung gestellt werden kann.

+0

Ich denke, du hast die Frage des OPs falsch verstanden, da hier keine Warnung ins Spiel kommt. Ich denke, Sie könnten implizite Wartezeiten auch nicht richtig verstehen. Die implizite Wartezeit sollte nach der Treiberinitialisierung definiert werden, und Sie möchten mehr als drei Sekunden haben. Ihre ersten beiden Findeelement-Anweisungen können fehlschlagen, da keine implizite Wartezeit definiert ist. –

+0

@Bill, ich habe die Frage sehr genau gestellt und die Aussage von Meghasri war allgemein gesagt, also war meine Antwort im Allgemeinen so, dass sie sie nach Bedarf weiter verbessern kann. Bis zu 2 Sekunden implizite Wartezeit ist eine Art von Beispiel, da wir nichts über die Anwendung und ihr Verhalten wissen, also habe ich einfach irgendeine Zahl eingegeben. Für die ersten beiden Suchvorgänge würde eine Wartezeit erforderlich sein, wenn die Seite aktualisiert wird, ansonsten ist keine Wartezeit erforderlich. – Deepak