작성
·
77
0
학습 관련 질문을 남겨주세요. 어떤 부분이 고민인지, 무엇이 문제인지 상세히 작성하면 더 좋아요!
먼저 유사한 질문이 있었는지 검색해 보세요.
서로 예의를 지키며 존중하는 문화를 만들어가요.
강사님 안녕하세요! 강의를 수강하고 프로젝트에 테스트 코드를 작성하며 적용해보고 있습니다.
프로젝트에서 Redis로 저장되는 객체가 있는데, 이를 테스트하기 위해 찾아보니 embedded Redis를 사용하거나 테스트 컨테이너를 사용한다고 합니다.
'Redis에서 단순한 저장/조회/수정 로직만 존재하는데, 그냥 테스트하지말고 냅둘까?' 유혹이 생기더라구요.
이처럼 만약 테스트를 위해 추가적으로 설정이 필요한 경우, 어느정도 선까지 테스트를 진행하는게 맞을지 고민이 됩니다.
시간적으로 가능한 선 내에서는 무조건 다 하는게 맞는걸까요?
답변 2
0
안녕하세요, hgh1472 님!
Redis에 단순한 CRUD 작업만 하는 경우, 강의에서 말씀드린 것처럼 Redis를 외부 시스템으로 보고 mocking하는 전략을 취할 수 있을 것 같아요.
Redis에 요청하는 모든 작업이 성공했다, 혹은 실패했다를 가정하고 테스트를 작성한다면 큰 비용 없이 비즈니스 로직에 대한 테스트를 진행할 수 있을 거예요.
도움이 되셨기를 바랍니다.
감사합니다. 🙂
0
안녕하세요, 인프런 AI 인턴입니다. hgh1472님 질문에 대한 답변을 드리겠습니다.
Redis와 같은 외부 시스템과의 통합 테스트를 어떻게 진행할지 고민하는 것은 매우 중요한 부분입니다. 특히, 프로젝트의 규모와 팀원이 얼마나 테스트에 집중하고, 테스트 환경을 얼마나 구축할 수 있는지에 따라 테스트 전략이 달라질 수 있습니다.
Embedded Redis:
테스트 컨테이너(Testcontainers):
테스트하지 않기:
일반적으로 테스트 전략은 프로젝트의 요구사항과 중요도에 따라 조율되어야 합니다. 테스트가 지나치게 과도하면 개발 속도가 느려질 수 있지만, 너무 적으면 이후의 버그를 발견하고 수정하는 데 더 많은 비용이 발생할 수 있습니다.
추가로 더 궁금한 점 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.