2016-03-08 451 views
0

是否有任何命令等待彈出關閉。其實我的項目就像在主頁彈出窗口會出現,並選擇城市流行後會接近。然後我可以點擊登錄按鈕。但是,當我運行腳本,關閉彈出之前,我的下一個命令是點擊登錄按鈕正在執行。所以測試腳本失敗。當我使用睡眠(10000)時,我的腳本工作正常。但每次我不想使用睡眠,等待彈出窗口關閉硒webdriver

Enter image description here

請幫我你的答案

感謝

回答

0

的一種方式,以循環一遍又一遍,而不是一個固定的等待:

WebDriver driver = new FirefoxDriver(); 

    //Accept the expected alert 
    driver.switchTo().alert().accept(); 

    //Wait dynamically to disappear 
    int i=0; 
    while(i<15) 
    { 
     try{ 
      driver.switchTo().alert(); 
      Thread.sleep(2000); 
     }catch(NoAlertPresentException a){ 
      break; 
     } 
     catch (Exception e) { 
     } 
     i++; 
    } 
1

我將等待彈出被隱藏:

WebDriverWait wait = new WebDriverWait(driver, 5000); // 5 seconds timeout 
wait.until(ExpectedConditions.invisibilityOfElementLocated(By.cssSelector("popup locator"))); 
+0

嗨弗洛朗,請告知是否「彈出定位器」是元素或類的文本或任何其他屬性? – AVA