selenium 기반 새 페이지 요소 가 져 오 는 데 실패 한 해결 방법
현재 페이지,이것 은 문제 가 없습니다.그러나 주의해 야 할 것 은 페이지 로 딩 속도 가 프로그램 실행 속도 보다 작 기 때문에 로그 인 후 페이지 의 요 소 를 가 져 오기 전에 WebDriverWait 의 util 방법 으로 해결 할 수도 있 고 Thread.sleep()를 통 해 프로그램 을 잠 들 게 할 수도 있 습 니 다(추천 하지 않 음).
그러나 보 는 우리 가 일반 하이퍼링크 를 클릭 하여 새로운 페이지 에 들 어가 면 위의 방법 을 통 해 새로운 페이지 요 소 를 얻 을 수 없다 는 것 이 중점 이다.이때 웹 드라이버 는 여전히 이전 페이지 를 가리 키 기 때문이다.
해결 방법:우선 창의 모든 핸들 을 가 져 온 다음 이 핸들 을 옮 겨 다 니 며 집합 합 니 다.핸들(handle)이 현재 창의 핸들(currentHandle)과 다 를 때 까지 이전 웹 드라이버 를 새 핸들(handle)이 가리 키 는 페이지 로 이동 합 니 다.
코드 는 다음 과 같 습 니 다:
String currentWindow=driver.getWindowHandle(); //
Set<String> handles=driver.getWindowHandles(); //
Iterator<String> it=handles.iterator();
WebDriver newDriver=null;
while (it.hasNext()){
String handle=it.next();
if(!handle.equals(currentWindow)){
driver=driver.switchTo().window(handle); //
break;
}
}
이상 의 이 selenium 을 바탕 으로 새로운 페이지 요 소 를 얻 는 데 실패 한 해결 방법 은 바로 편집장 이 여러분 에 게 공유 한 모든 내용 입 니 다.여러분 에 게 참고 가 되 고 저 희 를 많이 사랑 해 주 셨 으 면 좋 겠 습 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
WDM(WebDriverManager) 시작하기자동화 테스트(브라우저 자동화)에 대해 이야기할 때마다 몇 가지 사항이 있어야 합니다. 브라우저(시스템 경로에 있어야 함). 드라이버 실행 파일(시스템 경로에 있어야 함), 드라이버 실행 파일 버전은 브라우저 버전과...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.