2017-03-07 5 views
0

java로 IE 드라이버를 사용하고 있습니다. 나는 C#에서이 멋진 작업을했지만 java를 시도하고 걸림돌을 때렸다. 클래스 레벨에서 싱글 톤 패턴으로 드라이버를 인스턴스화 한 다음 @Test로 junit 테스트를 시작합니다. 요소의 발견을 동작과 구분하여 요소의 발견은 id = 69 및 브라우저가 자동 할당하는 16 진수 코드로 요소를 식별하는 데 효과적입니다. 여태까지는 그런대로 잘됐다.자바/셀레늄 webdriver 액션 클래스로 InvocationTargetException이 발생했습니다.

그런 다음 해당 변수를 WebElement로 가져와 action.click(element);에 전달합니다.이 시점에서 InvocationTargetException은 null로 throw됩니다. 드라이버 null이 문제를 일으키는 곳을 찾았지만 드라이버가 null이 아니며 정확하게 채워지는 요소 변수가 있다고 말한 것 같습니다.

셀렌 참조 또는 라이브러리를 활용하려고 할 때 null을 던질 수있는 무언가에 문제가 있는지 궁금합니다. 이 아이디어를 얻기 위해 내가 생각할 수있는 아이디어가 있습니까? 이것은 기술적으로 java.lang.reflect 예외이며 셀렌 예외는 아니며 null 변수 인 경우 셀렌 예외가 발생할 것으로 예상됩니다.

모든 의견이나 생각을 부탁드립니다.

답변

3

답변을 찾았습니다. 작업 클래스는 드라이버에게 언 바운드되었습니다. 그래서 내가 원했던 모든 드라이버를 사용할 수 있었지만, 액션 초기화는 브라우저가 액션을 실행하도록 찾지 못했습니다. 나는 Action이라는 서브 클래스를 가지고 있었는데, 그 클래스는 셀레늄 인 "Actions"클래스와 혼동을 일으켰다.

죄송 합니다만 셀렌을 사용하려고 시도하는 동안 NULL 값을 가진 사람이 InvocationTargetException 인 경우 각 셀렌 클래스가 올바르게 인스턴스화되어 활성 드라이버 인스턴스와 연결되어 있는지 확인하십시오.