Spring Boot Test - Argument Captor
Mockito 라이브러리에서 제공하는 ArgumentCaptor는 테스트 코드에서 메서드 호출 시 전달된 인수를 캡처하고 검증하는데 사용되며 특정 메서드가 예상된 인수로 호출되었는지 확인할 수 있다. 그리고 다양한 레이어 테스트에서 사용 될 수 있다! Service 테스트 예시 @ExtendWith(MockitoExtension.class) pu...
Mockito 라이브러리에서 제공하는 ArgumentCaptor는 테스트 코드에서 메서드 호출 시 전달된 인수를 캡처하고 검증하는데 사용되며 특정 메서드가 예상된 인수로 호출되었는지 확인할 수 있다. 그리고 다양한 레이어 테스트에서 사용 될 수 있다! Service 테스트 예시 @ExtendWith(MockitoExtension.class) pu...
JUnit 5, Mockito와 함께하는 Service 코드 테스트! 잊어버리지 않기 위해 기록 ✏️ Service 코드가 다음 형태로 구현되어 있을 때, @RequiredArgsConstructor @Service public class TaskService { private final TaskRepository taskRe...
발생 이슈 요약: content 필드로 들어오는 값을 필터링하여 공백 문자만 들어있거나 값이 없으면 예외를 던지게 하고 싶었는데, 개행 문자를 포함한 여러 줄 글자가 입력 될 경우 예외 메세지를 응답 받게 되었다 Spring Boot 프로젝트로 회원 관리를 하는 게시판을 만들어보다가 테스트 게시글 생성에 대한 테스트 코드를 작성하면서 java...
rest controller를 테스트하는 2가지 방법에 대해 정리 코드가 다음과 같은 형태로 구현되어 있을 때 /* Rest Controller */ @RequiredArgsConstructor @RestController @RequestMapping("/study") class StudyApiController { ...
이런 식으로 한글이 분해되어 나타난다면 redis-cli 실행 시 --raw 옵션을 추가해주어 해결할 수 있다. redis-cli --raw 이모지도 깨져서 나타난 걸 보면 ascii 코드로 표현 할 수 없는 문자들이 깨져서 나타나는 것 같다. 글을 작성하다 너무 궁금해져서 구글링을 시도해보았고 실패하여 chatgpt에 물어보니...
Redis Database 최대 개수 변경 Redis는 기본 사용 가능한 데이터베이스가 16개이다. (0번 ~ 15번) Redis 설정 파일redis.conf을 작성하여 database의 최대 개수를 수정해 줄 수 있다. 자세한 정보 -> devbksheen.tistory Redis Cli로 데이터베이스 접근 redis-cli를 통해...
적용 환경 Spring Boot 3.2.0 Redis는 NoSQL 데이터베이스로 간단한 형태의 키에 데이터를 저장하는 키-값 저장소이다. 데이터 캐싱, 세션 관리, 실시간 분석, 대기열 처리 등 빠른 응답이 필요한 프로그램에서 사용한다고 한다! Redis를 Spring Boot에서 사용할 수 있도록 설정하는 방법을...
@Value 필드만 관리하는 SessionUserValue.java Component를 테스트시 임의의 값으로 직접 주입하기 위해 @InjectMocks 어노테이션을 사용하지 않고 직접 인스턴스를 생성해야 할 상황이 생겼다. 알아낸 방법을 기록 ✏️ @InjectMocks 어노테이션을 통해 생성하던 SessionUserService의 인스...
이렇게 설정하게 되면 Spring Boot가 @Value 필드의 자료형 (String, boolean, int, long 등)으로 bean을 찾게 되므로 사용하진 않을 것 같다. 다른 활용 방법이 생긴다면 참고할 수 있도록 기록을 남겨둠! Service 코드의 테스트 작성 중 @Value 필드를 해결하지 못하는 문제가 발생했다. ...
발생 이슈 RedisTemplate을 사용하는 Service의 테스트 코드를 작성하던 중 redisTemplate.opsForSet().add() 부분에서 1번만 호출되어야 했을 redisTemplate.opsForSet() 메서드가 2번 호출되었다는 에러 메세지를 계속 받게 되었다. 에러 메세지 org.mockito.exceptions.v...