본문 바로가기
에러 기록

~~~ because "this.redisTemplate" is null - 스프링 REDIS 테스트 오류

by 샤샤샤샤 2024. 2. 4.

 

스프링에서 redis를 적용한뒤 테스트 코드를 작성하고 돌렸을시 다음과 같은 오류가 발생한다.

그러나 본 어플리케이션 환경에서는 잘 돌아가기에 원인을 찾는데 시간이 오래 걸렸다.

 

 

원인:

bean으로 등록된 객체들을 못찾아와 생기는 문제

 

해결:

@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)
public class RedisTest {
    ....
}

 

@SpringBootTest 어노테이션을 추가해 본래 어플리케이션에 추가된 설정을 테스트 환경에서도 똑같이 재현한다.

즉, redisTemplet 을 빈으로 등록한다.

다만 이를 사용하면 단위 테스트 속도가 느려질수 있다는 단점이 존재한다.