2015-01-21 2 views
1

암시 적 대기의 경우 WebDriver가 즉시 요소를 찾지 못하면 지정된 시간 동안 대기하고 지정된 시간이 경과 한 후에 요소를 찾을 수없는 경우 예외를 throw합니다.명시 적 대기 조건이 몇 번 확인됩니까?

암시 적 대기의 경우 WebDriver는 요소를 두 번 (최대) 검사합니다. 1) 즉시 2) (즉시 발견되지 않으면) 지정된 시간이 끝날 때.

그러나 명시 적 대기의 경우 얼마나 자주 조건이 검사됩니까?

매초마다 true/not null이되거나 또는 암시 적 대기처럼 두 번만 확인되는 경우를 의미합니까?

+1

WebDriverWait가 ExpectedCondition마다 500 밀리 초를 호출합니다. –

+1

도와 주심 감사합니다 !!! – TDHM

+0

당신은 환영합니다 .. –

답변

2

기본적으로 폴링은 500 밀리 초 (폴링)마다 확인합니다. 그래서 당신이 볼 수있는 소스 코드에서 -

공공 최종 정적 긴 DEFAULT_SLEEP_TIMEOUT = 500;

public WebDriverWait(WebDriver driver, long timeOutInSeconds) { 
    this(driver, new SystemClock(), Sleeper.SYSTEM_SLEEPER, timeOutInSeconds, DEFAULT_SLEEP_TIMEOUT); 
} 

내부적에 호출 곳 - 성공적으로 반환 될 때까지 기본적으로

protected WebDriverWait(WebDriver driver, Clock clock, Sleeper sleeper, long timeOutInSeconds, 
     long sleepTimeOut) { 
    super(driver, clock, sleeper); 
    withTimeout(timeOutInSeconds, TimeUnit.SECONDS); 
    pollingEvery(sleepTimeOut, TimeUnit.MILLISECONDS); 
    ignoring(NotFoundException.class); 
    } 
+1

감사합니다, Vivek !!! 가장 중요한 것은 코드를 넣는 것입니다. – TDHM

+0

친구를 돕기에 행복 ... 환호 ... –