HtmlUnit
: Html 템플릿 뷰 테스트를 보다 전문적으로 할 수 있게 해준다.
의존성 추가
<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>
기존 테스트 코드
//요청: /hello
//응답:
// - 모델 name : daehwan
// - 뷰 이름 : hello
public void hello2() throws Exception{
mockMvc.perform(get("/hello"))
.andExpect(status().isOk())
.andDo(print())
.andExpect(view().name("hello"))
.andExpect(model().attribute("name","daehwan"))
.andExpect(content().string(containsString("daehwan")));
}
- content안에 daehwan이라는 글자가 들어있느냐를 확인하는 테스트 코드
HtmlUnit 사용 테스트 코드
@Autowired
WebClient webClient;
public void hello3() throws Exception {
HtmlPage page = webClient.getPage();
HtmlHeading h1 = page.getFirstByXPath("//h1");
assertThat(h1.getTextContent()).isEqualToIgnoringCase("daehwan");
}
- h1 태그의 TextContent안에 daehwan이 있느냐를 가장 앞에 있는 h1 태그를 받아와 테스트하는 코드
References
https://www.inflearn.com/course/%EC%8A%A4%ED%94%84%EB%A7%81%EB%B6%80%ED%8A%B8/
https://htmlunit.sourceforge.io/gettingStarted.html
'Spring > 이론' 카테고리의 다른 글
Test (0) | 2020.06.03 |
---|---|
JPQL (0) | 2020.05.17 |
SpringBoot (0) | 2020.04.22 |
Restful Web Service with Spring (0) | 2020.04.20 |
Restful Web Service (0) | 2020.04.19 |
댓글