Test 코드 짜면서 수정한 부분
: 테스트 코드의 중요성을 깨달으며 조금씩 리팩토링하며 연습중인데, 초반에 쏟아지는 어노테이션들과 혼재된 강의와 정보속에서 또다시 엄청난 퍼즐맞추기의 시간을 갖고 있다.
조금이라도 정리해보려 TIL로 기록해본다.
Spring Security를 사용한다면?
인증 인가의 과정을 Spring Security를 이용해서 하는 경우 의존성을 추가해줘야 한다.
별거 아니지만 오류나서 시간 녹은 부분..
testImplementation 'org.springframework.security:spring-security-test'
@EnableJpaAuditing 옮기기
기존 Main의 어플리케이션 코드에 달아둔 어노테이션.
이렇게 해두면 에러가 나고 여러모로 미래를 대비해 config 클래스로 옮겨두며 에러를 해결했다.
@SpringBootTest
위 어노테이션은 통합테스트를 하기 위해 사용하는 어노테이션이다.
내가 테스트 진행하려던 단위테스트에서는 쓰이지 않는 것이라 혼용하였다.
반대로 단위테스트에서 사용되는 어노테이션들은
@WebMvcTest, @DataJpaTest, @RestClientTest, @JsonTest 등이 있다.
장점
전체적인 플로우를 테스트 해볼 수 있다.
단점
모든 Bean을 로드해야하기 때문에 시간이 오래걸리고, 디버깅이 힘들다.
더 공부할 것.
- BDD 문법? (BDDMockito, Stubbing) 어떤 상황에 쓸 수 있는 지. given(...). willReturn(...) 시도했는데 이유도 모른 채 에러가 난다.
- 테스트코드를 간단한 것부터 차근차근 직접 스텝업해보며 가지고 놀아볼 시간이 필요하다.
- Mockito문법 : @TestInstance, @InjectMocks, verify() 등 처음보는게 너무 많다. 조금씩 숙달하자.
머리 터질 것 같다.
머리가 부어있는 느낌이다.
조금씩 부지런히 소화해야한다.
대부분의 내용은 아래 공식문서에 더 자세히 나와있다.
'TIL : Today I learned (or Week)' 카테고리의 다른 글
TIL 230807 : Swagger 나도 한 번 써보기 (0) | 2023.08.07 |
---|---|
WIL 230806 : 모든 수업만큼은 끝. (0) | 2023.08.07 |
TIL 230803 : Test하며 자잘한 깨달음 몇 개 (0) | 2023.08.03 |
TIL 230724 : 과제리뷰 리뷰. (0) | 2023.07.25 |
WIL 230723 : 익숙하면서도 낯선 팀플. (0) | 2023.07.25 |