2016-06-07 1 views
0

셀렌 웹 드라이버에 대한 2 분짜리 스크립트가 있습니다. FirefoxDriverChromeDriver으로 매우 잘 작동합니다. 실제 브라우저에서는 절대로 실패하지 않습니다.HtmlUnitDriver가 무작위로 실패 (FirefoxDriver/ChromeDriver 작동)하는 이유는 무엇입니까?

그러나 내가 으로 실행했을 때 HTMLUnit 드라이버를 발견했습니다. 해당 드라이버는 무작위로 실패합니다. 요소를 찾을 수없는 것처럼 예외를 던집니다. 내가 밖으로 시도

솔루션 :

  1. 6000 MS에 Thread.sleep를 추가합니다. 하지만 매번 실행되지 않습니다.
  2. 대기 추가하지만 같은 줄에 오류가 발생합니다.
  3. 요소의 위치를 ​​ID에서 xpath 또는 CSS 경로로 변경합니다.

구성 및 버전 :

셀레늄 자바 : 2.53.0

셀레늄 - 서버 : 2.53.0

HtmlUnit과 드라이버 : 2.21

TestNG를 : 6.8 .8

+0

HtmlUnitDriver는 매우 다른 구현을 가지고 - 또한

WebDriverWait wait = new WeBDriverWait(driver, 10); wait.until(ExpectedConditions.elementToBeClickable(By.xpath(""))); 

, 프로젝트에 의존성 아래에 추가했는지 확인 - 아래 주어진 드라이버, 요소를 찾을 수 없습니다의 예외가 발생합니다 실제로 다른 브라우저를 사용합니다). 그래서, 그것은 더 제한적이고 일반적으로 더 자주 실패 할 것입니다. –

답변

1

웹 요소가 명시 적으로 추가됩니다. 그렇지 않은 (

<dependency> 
<groupId>org.seleniumhq.selenium</groupId> 
<artifactId>htmlunit-driver</artifactId> 
<version>2.21</version> 
</dependency> 
<dependency> 
<groupId>org.seleniumhq.selenium</groupId> 
<artifactId>selenium-support</artifactId> 
<version>2.53.0</version> 
</dependency> 
+0

대기 시간에 30 초를 추가했지만 여전히이 오류가 발견되었습니다. 프로젝트가 라이브러리를 업데이트했습니다. 또한 두 종속성을 모두 포함했습니다. – Sagar007

+0

셀렌 지원에 대한 자세한 정보를 제공 할 수 있습니까? – Sagar007

+0

HtmlUnitDriver - https://github.com/SeleniumHQ/htmlunit-driver의 공식 페이지에 따라 Selenium-support가 필요합니다. –