我正在寫一個selenium腳本來登錄並創建新郵件,發送它並註銷。但是當我點擊新郵件按鈕時,它會打開一個新窗口。在硒中我如何處理這個問題。我對硒很陌生。請詳細解釋。在Selenium中如何處理新窗口?
1
A
回答
1
http://toolsqa.com/selenium-webdriver/switch-commands/
硒webdriver的切換窗口的命令可以在這裏找到它......
+0
這不是答案應該是一個評論。謝謝 – DebanjanB
0
使用下面的代碼,你必須使用getWindowHandles-我希望它能幫助,讓我知道如果你被卡住其他地方 -
@Test
public void multipleWindows() {
driver.get(URL+"/windows");
driver.findElement(By.cssSelector(".example a")).click();
Object[] allWindows = driver.getWindowHandles().toArray();
driver.switchTo().window(allWindows[0].toString());
Assert.assertNotEquals(driver.getTitle(), "New Window");
driver.switchTo().window(allWindows[1].toString());
Assert.assertEquals(driver.getTitle(), "New Window");
}
}
0
試試看這個代碼,很容易理解。
WebDriver driver = new FirefoxDriver();
driver.get("http://demo.guru99.com/popup.php");
driver.findElement(By.xpath("html/body/p/a")).click();
// return the parent window name as a String
String parentWindow=driver.getWindowHandle();
driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
// Pass a window handle to the other window
for(String childWindow: driver.getWindowHandles())
{
System.out.println("Switch to child window");
//switch to child window
driver.switchTo().window(childWindow);
//find an element and print text of it
WebElement textLabel=driver.findElement(By.xpath("html/body/div[1]/h2"));
System.out.println(" text: "+textLabel.getText());
driver.close();
}
System.out.println("Get back to parent window");
//switch to Parent window
driver.switchTo().window(parentWindow);
//find an element and print text of it
WebElement logotext=driver.findElement(By.xpath("html/body/div[1]/h2"));
System.out.println("text: "+logotext.getText());
driver.close();
}
相關問題
- 1. 如何使用Java在Selenium WebDriver中處理新窗口?
- 2. 在selenium中的窗口處理(python)
- 3. 在Selenium Webdriver中處理多個窗口
- 4. 在Selenium中處理彈出窗口
- 5. Selenium webdriver窗口處理
- 6. 如何處理selenium IDE中的新窗口選項卡?
- 7. 如何在selenium webdriver + python中處理文件上傳窗口?
- 8. 在處理新窗口
- 9. powershell在新窗口處理
- 10. Selenium Webdriver處理彈出式窗口
- 11. 如何處理父窗口的刷新?
- 12. 如何處理從模態窗口上傳文件Selenium WebDriver Java
- 13. Python Selenium Webdriver:如何處理警報窗口
- 14. 如何使用selenium webdriver處理Windows文件瀏覽窗口
- 15. 如何使用selenium和Java處理javascript彈出窗口?
- 16. 如何處理selenium webdriver中的多重窗口,需要從第二個窗口切換到第三個窗口
- 17. 在selenium webdriver中處理多個窗口和什麼是WindowName
- 18. 處理當前窗口並在主窗口中加載新的fxml窗口
- 19. 如何在java中使用selenium webdriver處理嵌套的彈出窗口?
- 20. 如何在selenium webdriver中使用空白ID處理彈出窗口?
- 21. 處理程序在刷新父窗口後彈出窗口
- 22. 如何使用Selenium處理彈出窗口? (「driver.switchTo()窗口(窗口句柄);」沒有一貫的工作)
- 23. 如何處理相同的多個窗口,例如谷歌在Selenium WebDriver與Java
- 24. 如何強制Selenium在新窗口中打開鏈接?
- 25. 如何使用Selenium在新窗口中輸入憑據?
- 26. 如何在Selenium IDE中正確打開一個新窗口?
- 27. 如何用Selenium webdriver在水豚中打開一個新窗口?
- 28. 無法處理Selenium Webdriver(Java)中的showModalDialog窗口
- 29. Selenium處理循環中的瀏覽器窗口
- 30. 如何處理使用Selenium chromedriver的地理位置彈出窗口?
的[如何處理在硒webdriver的複式窗口,需要從第二到第三窗口切換](https://stackoverflow.com/questions/45455402/how-to-handle-mutliple-windows可能的複製-in-selenium-webdriver-need-to-switch-from-second) – DebanjanB