top of page

WaitDifferent types of Selenium WebDriver Waits

Regular wait - המתנה חד פעמית

Thread.sleep(מספר);

או

WebDriverWait wait = new WebDriverWait(driver, 10);

implicitlyWait  -   משפיע על כל פעולה שנעשת

drv=new FirefoxDriver();

drv.get("https://gmail.com");

drv.manage().window().maximize();

//לא שימושי לחקות לאובייקט או לחקות לאחר שהדף עלה

drv.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS)

explicit wait - המתנה לאובייקט ספציפי

// explicit wait - to wait for the compose button to be click-able

      WebDriverWait wait = new WebDriverWait(driver,30);

      wait.until(ExpectedConditions.visibilityOfElementLocated(By.xpath("//div[contains(text(),'COMPOSE')]")));

//  יש עוד פונקציות ExpectedConditions.ל

//(1

כמו- ExpectedConditions.elementToBeClickable//

// (2

ממתין עד שהמילה "hello world" תופיע//

 

// click on the compose button as soon as the "compose" button is visible

      drv.findElement(By.xpath("//div[contains(text(),'COMPOSE')]")).click();

Synchronization:

Thread.sleep(1000);

driver.manage().timeouts().pageLoadTimeout(5, TimeUnit.SECONDS);

driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);

 

WebDriverWait wait = new WebDriverWait(driver, 10);

wait.until(ExpectedConditions.presenceOfElementLocated(By.id("Test")));

wait.until(ExpectedConditions.elementToBeClickable(By.id("Test")));

wait.until(ExpectedConditions.visibilityOfElementLocated(By.id("Test")));

wait.until(ExpectedConditions.invisibilityOfElementLocated(By.id("Test")));

wait.until(ExpectedConditions.textToBePresentInElementLocated(By.id("Test"), "Text to Insert"));

wait.until(ExpectedConditions.titleIs("My title"));

wait.until(ExpectedConditions.titleContains("My title Contains"));

FUNCTIONS

public void WaitForList( int timeoutInSeconds, List<WebElement> elements) 
    {
        WebDriverWait wait = new WebDriverWait(driver,timeoutInSeconds);
       // return wait.until(ExpectedConditions.visibilityOfElementLocated(sideNave));
       wait.until(ExpectedConditions.visibilityOfAllElements(elements));
       int x = elements.size();
        if(x==0)
        {
            test.log(LogStatus.FAIL, "Waiting "+ timeoutInSeconds +" for web element , not found - " + elements.toString());
            fail("WaitForList" + elements );
        }
    }
                              
    public void WaitForElement( int timeoutInSeconds, WebElement element) 
    {
        WebDriverWait wait = new WebDriverWait(driver,timeoutInSeconds);
       // return wait.until(ExpectedConditions.visibilityOfElementLocated(sideNave));
        boolean hh = wait.until(ExpectedConditions.visibilityOf(element)).isDisplayed();
        if(hh== false)
        {
           test.log(LogStatus.FAIL, "Waiting "+ timeoutInSeconds +" for web element, not found- " + element.toString());
           fail("WaitForElement " + element );
        }
    }

 

Selenium - izselenium aoutomation tool

054-8059589

  • White Facebook Icon
  • White Twitter Icon
  • White Google+ Icon
  • White YouTube Icon

© 2017 by izselenium

bottom of page