본문 바로가기
Spring/이론

HtmlUnit

by 모스키토끼 2020. 6. 3.

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/

 

스프링 부트 개념과 활용 - 인프런

스프링 부트의 원리 및 여러 기능을 코딩을 통해 쉽게 이해하고 보다 적극적으로 사용할 수 있는 방법을 학습합니다. 중급이상 프레임워크 및 라이브러리 Spring Boot Spring Back-End 온라인 강의 스프

www.inflearn.com

https://htmlunit.sourceforge.io/gettingStarted.html

 

HtmlUnit – Getting Started with HtmlUnit

Introduction The dependencies page lists all the jars that you will need to have in your classpath. The class com.gargoylesoftware.htmlunit.WebClient is the main starting point. This simulates a web browser and will be used to execute all of the tests. Mos

htmlunit.sourceforge.io

 

'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

댓글