더북(TheBook)

앞에서 작성한 간단한 웹 테스트처럼 이 클래스에도 @WebIntegrationTest 애너테이션을 붙이고 randomPorttrue로 설정하여 애플리케이션이 임의의 포트로 시작하게 했다. 또 이전처럼 포트를 port 프로퍼티로 주입하여 실행 중인 애플리케이션에 요청을 보낼 URL을 만드는 데 사용했다.

openBrowser() 정적 메서드는 파이어폭스 브라우저를 실행할 새 FirefoxDriver 인스턴스를 생성한다(파이어폭스를 테스트 머신에 설치해야 한다). 테스트 메서드를 작성할 때 FirefoxDriver 인스턴스로 웹 브라우저 작업을 수행할 것이다. 또 요소를 느리게 로드할 때를 대비하여 FirefoxDriver가 페이지에 있는 요소를 로드할 때 최대 10초까지 기다리도록 구성했다.

테스트를 완료한 후에는 파이어폭스 브라우저를 종료해야 한다. 따라서 closeBrowser() 메서드에서 FirefoxDriver 인스턴스의 quit() 메서드를 호출하여 웹 브라우저를 종료하게 했다.

Note 웹 브라우저 선택하기

예제 코드에서는 파이어폭스로 테스트했지만, 셀레늄은 인터넷 익스플로러, 구글 크롬, 애플 사파리 등 다른 웹 브라우저 드라이버도 제공한다. 다른 웹 브라우저를 사용할 수 있으므로 사용하거나 지원하고 싶은 웹 브라우저용 테스트를 작성하는 것도 좋다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.