2015-01-21 6 views

답변

-1

http://docs.seleniumhq.org/docs/04_webdriver_advanced.jsp

. explicit

public bool CheckElementExist(string state) 
{ 
    //Write the selector carefully. 
    By byCss = By.CssSelector("#view-" + state + ""); 
    try 
    { 
    //Explicit wait to check if element exist for 10s 
    new WebDriverWait(Driver, TimeSpan.FromSeconds(10)).Until(ExpectedConditions.ElementExists(byCss)); 
     return true; 
    } 
    catch (NoSuchElementException) 
    { 
     return false; 
    } 
} 
1

나는 당신의 대안 .FindElements을 사용할 수 있습니다 시도의 catch 블록을 사용합니다. 어떤 것도 일치하지 않는 selector를 감안할 때, 예외를 던지기보다는 빈 목록을 반환합니다.

var elementExists = driver.FindElements(By.ClassName("something")).Any(); 

Any 목록이 뭔가을 (.Count == 0 생각)가 포함되어있는 경우 단순히 확인하는 LINQ 방법입니다.

관련 문제