HtmlUnit은 프로그래밍적으로 HTML 사이트와 상호작용할 수 있게 하는 자바 오픈소스이다. HTML 단위 테스트를 위한 툴이다.
Spring에서는 MVC 테스트 (특히 템플릿 뷰) 때 유용하게 쓰인다.
참고
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>htmlunit-driver</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>net.sourceforge.htmlunit</groupId>
<artifactId>htmlunit</artifactId>
<scope>test</scope>
</dependency>
@RunWith(SpringRunner.class)
@WebMvcTest(SampleController.class)
public class SampleControllerTest {
@Autowired
WebClient webClient;
@Test
public void hello() throws Exception {
HtmlPage page = webClient.getPage("/hello");
HtmlHeading1 h1 = page.getFirstByXPath("//h1");
assertThat(h1.getTextContent()).isEqualToIgnoringCase("dsunni");
}
}
WebClient를 사용해 좀더 HTML에 특화된 테스트를 할 수 있다