Java를 사용하여 Selenium-WebDriver에서 지연을 구현하는 방법: 암시적 대기와 명시적 대기
Java Selenium-WebDriver 프로젝트에는 요소 위치에 문제가 발생했습니다. 암시적 대기와 Thread.sleep을 모두 추가했으며 후자가 문제를 해결했지만 더 적합한 접근 방식을 찾고 있습니다.
암시적 대기 대 명시적 대기
Selenium-WebDriver는 두 가지 유형의 대기를 제공합니다.
비교
암시적 대기는 편리하지만 요소가 빠르게 로드되면 불필요한 지연이 발생할 수 있습니다. 반면에 명시적 대기는 더 많은 제어와 유연성을 제공합니다.
권장 접근 방식: 명시적 대기
귀하의 시나리오에서는 명시적 대기가 더 적합한 솔루션입니다. 애플리케이션 사용자 인터페이스의 다양한 로드 시간. 아래에 제공된 코드 예제는 명시적 대기의 사용을 보여줍니다.
<code class="java">import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; import org.openqa.selenium.support.ui.ExpectedConditions; import org.openqa.selenium.support.ui.WebDriverWait; public class ExplicitWaitExample { public static void main(String[] args) { WebDriver driver = getDriver(); WebElement textbox = new WebDriverWait(driver, 30) .until(ExpectedConditions.presenceOfElementLocated(By.id("textbox"))); } }</code>
이 접근 방식을 사용하면 Selenium은 계속하기 전에 텍스트 상자 요소가 페이지에 나타날 때까지 기다리므로 고정 대기의 사용을 피할 수 있습니다. 기간입니다.
위 내용은 Selenium의 암시적 대기와 명시적 대기: 언제 어느 것을 사용해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!