2015-11-05 129 views
0
WebDriver driver = new FirefoxDriver(); 
driver.get("https://www.flipkart.com"); 
driver.manage().window().maximize(); 
String parentWindowHandler = driver.getWindowHandle(); // Store your parent window 
String subWindowHandler = null; 
Set<String> handles = driver.getWindowHandles(); // get all window handles 
Iterator<String> iterator = handles.iterator(); 
while (iterator.hasNext()){ 
    subWindowHandler = iterator.next(); 
} 
driver.switchTo().window(subWindowHandler); 

我試過它也切換到主窗口。請添加寶貴的輸入或代碼來關閉彈出窗口。關閉Flipkart打開彈出窗口,並使用硒轉到主窗口

+0

任何人都可以幫助我嗎? – Shirsh

回答

0

您可以嘗試通過導入java.awt.Robot中的圖書館使用java機器人API。一個例子是在這裏:

One solution for File Upload using Java Robot API with Selenium WebDriver by Java

您可以嘗試使用它同樣按Esc鍵。在flipkart網站上按Esc可以消除彈出窗口。

+0

嗨Freya, 手動按Esc鍵它工作。 但嘗試使用下面的代碼,但無法正常工作。 機器人機器人=新機器人(); \t \t robot.keyPress(KeyEvent.VK_ESCAPE); 如果我錯了,請糾正我。提前致謝。 – Shirsh

+0

嗨Shirsh,你也必須釋放鑰匙。嘗試使用:機器人機器人=新機器人(); robot.keyPress(KeyEvent.VK_ESCAPE); robot.keyRelease(KeyEvent.VK_ESCAPE); – Freya

+0

嗨Shirsh,請接受我的帖子作爲答案,如果它幫助你。和往常一樣,請讓我知道如果我可以進一步幫助:) – Freya

0

在Flipkart的網站上出現的彈出窗口是一個簡單的HTML模式。當需要訪問新的彈出窗口時使用窗口句柄。

要關閉彈出窗口,只需點擊彈出窗口右上角的十字。使用waits確保硒找到WebElement。

試試這個:

driver.get("https://www.flipkart.com"); 
WebDriverWait wait = new WebDriverWait(driver, 10); 
WebElement cross = wait.until(
    ExpectedConditions.visibilityOfElementLocated(By.className("close-icon"))); 
cross.click() 
+0

嗨,傑森。試過這個,但不工作。它爲你工作? – Shirsh