이 페이지에는 좋은 답변이 많이 있습니다.
- 저는 일반적으로 maximize.window ()로 시작합니다. 실제로는 드라이버 팩토리 또는 드라이버를 초기화하는 곳에서이 작업을 수행합니다. 이것은 기본적으로 항상 수행됩니다.
- 일반적으로 자바 스크립트 지연으로 인해 요소를 기다립니다.
둘 다 위에서 다양한 세부 사항에서 논의됩니다. 내가 보지 못한 대답은 ScrollToElement였습니다. 요소 목록을 처리하는 동안 처리하는 동안 더 많은 요소, 확인란을 만드는 것처럼 들립니다. 이로 인해 목록의 요소가 보이는 페이지 밖으로 이동할 수 있습니다. 때때로 육안으로 요소를 볼 수 있지만 클릭 할 수 없습니다. 목록을 처리 할 때 때때로 스크롤링을 중단해야합니다.
- 중단 점을 설정하고 사용중인 요소가 창 가장자리, 상단 / 하단 오른쪽 / 왼쪽에 있는지 확인합니다. 때때로 이런 경우 셀레늄을 통해 얻을 수 없지만 마우스로 수동으로 클릭 할 수 있습니다.
이것을 실행하기 때문에 PageScroll.java를 만들고 거기에 스크롤 스크립트를 넣었습니다. 다음은이 클래스의 몇 가지 메서드입니다.
public static void scrollToTop(WebDriver driver) {
((JavascriptExecutor) driver)
.executeScript("window.scrollTo(0,0)");
}
public static void scrollToBottom(WebDriver driver) {
((JavascriptExecutor) driver)
.executeScript("window.scrollTo(0, document.body.scrollHeight)");
}
public static void scrollToElementTop(WebDriver driver, WebElement element) {
((JavascriptExecutor) driver).executeScript(
"arguments[0].scrollIntoView(true);", element);
}
public static void scrollToElementBottom(WebDriver driver, WebElement element) {
((JavascriptExecutor) driver).executeScript(
"arguments[0].scrollIntoView(false);", element);
}
더 많은 예제 는 Selenium 을 사용 하여보기로 요소 스크롤을
참조하십시오.