일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- ioc컨테이너
- 소프트웨어의 품격
- 토비의 스프링
- fetch join
- open-session-in-view
- 동적파라미터
- java predicate
- Spring
- 기능적 요구사항
- 도커 이미지 빌드
- 생성자주입
- kotlin ::
- 스프링시큐리티
- 스프링di
- 스프링부트 도커
- 스프링 포매터
- jpa no session
- 자바 필터
- 스프링 시큐리티 설정
- jpa lazy
- Atomicity
- 수정자주입
- 정적팩토리메서드
- spring formatter
- method refetence
- IOC
- 그래프큐엘
- 스프링
- kotlin 리팩터링
- 비기능적 요구사항
Archives
- Today
- Total
공부기록
[SPRING]MockMvc를 이용한 테스트 본문
반응형
위와 같은 컨트롤러가 있다. 테스트코드는 아래와 같다.
테스트는 성공, 하지만 문제가 있는 테스트코드.
우리가 알고싶은 건 위 코드와 같은 helloWorld() 메소드를 실행했을 때의 리턴값이 "HELLO WORLD!"인지가 아니라,
GET /api/helloworld 요청에 대한 응답이 "HELLO WORLD!"인지 알고싶은 것.
근데 웹 요청에 대한 테스트는 어떻게? MockMvc를 이용하자
MockMvcRequestBuilders.get("/api/helloworld") |
/api/helloworld 에 get방식으로 요청을 보낸다. |
.andDo(MockMvcResultHandlers.print()) | 요청에 대한 응답을 MockResultHandlers.print() 메서드를 통해 콘솔에 출력한다. |
.andExpect(MockMvcResultMatchers.status().isOk()) | status 코드가 200임을 확인한다 |
.andExpect(MockMvcResultMatchers.content().string("HELLO WORLD!")); | 결과의 컨텐트가 String형 HELLO WORLD!인지 확인한다 |
테스트 모두 통과!( 실패 케이스 먼저 작성할 것. )
반응형
'Spring' 카테고리의 다른 글
[SPRING] AOP? 핵심기능과 부가기능의 분리. (1) | 2019.08.04 |
---|---|
[SPRING] 빈 클래스 자동인식 네가지 스테레오타입 어노테이션 (0) | 2019.08.03 |
[SPRING] @Component 사용해서 Bean으로 등록해보자 (1) | 2019.08.03 |
[spring] web.xml 해석. (0) | 2019.07.31 |
[토비의 스프링] 스프링이 대부분의 객체를 singleton으로 제공해주는 이유 (0) | 2019.07.26 |