需要一个可自定义的等待方法来获得元素的可见性和可选择性吗?

时间:2017-02-09 09:35:17

标签: selenium selenium-webdriver

我需要一种方法,根据我在硒中的要求,我可以改变时间等待某个标准

1 个答案:

答案 0 :(得分:0)

下面的代码将首先检查Element是否在后端可用,如果元素在后端可用,那么它将等到元素显示。(如果元素在后端不可用,那么也它会等到元素在后端)

public void E_WaitUntilElementDisplay() throws Exception
{

    int i=1;
    boolean eleche,eleche1 = false; 
    while(i<=1)
    {
            try{
                eleche = driver.findElements(By.id("ABC")).size()!=0;
            }catch(InvalidSelectorException ISExcep)
            {
                eleche = false;
            }
            if(eleche == true)
            {

                while(i<=1)
                {
                    try{
                        eleche1=driver.findElement(By.id("ABC")).isDisplayed();
                    }catch(org.openqa.selenium.NoSuchElementException NSEE){
                        eleche1=false;
                    }
                    if(eleche1 == true)
                    {
                        i=2;
                        System.out.println("\nElement Displayed.");
                    }
                    else
                    {
                        i=1;
                        Thread.sleep(1500);
                        System.out.println("\nWaiting for element, to display.");
                    }
                }
            }
            else
            {
                i=1;
                Thread.sleep(1500);
                System.out.println("\nWaiting for element, to display.");
            }
    }
}