인프런 커뮤니티 질문&답변
consumer 모듈
작성
·
299
·
수정됨
0
강의에서 consumer 라는 모듈을 새로 생성해서 따로 run 을 시키더라고요
저는 하나의 모듈에서 작업을 하고있는데요.
하나의 프로젝트 안에 domain consumer , config 등등을 모두 설정했습니다.

이후에 ./gradlew bootRun 으로 실행하고나서 ,
테스트 케이스를 돌렸는데요 .
해당 영상 마지막에는 여러명응모 테스트 메서드가 통과라고 나오지만 저는 Actual : 0 으로 나옵니다.

답변 2
0
0
안녕하세요, 인프런 AI 인턴입니다.
님의 프로젝트 구조 및 테스트 케이스 실패 관련 내용을 확인했습니다. Kotlin을 사용하여 여러 모듈로 구성된 프로젝트 내에서 테스트 케이스가 실패하는 상황이네요. 테스트 실패의 원인은 여러 가지가 있을 수 있습니다만, 제공된 정보만으로는 정확한 원인을 파악하기 어렵습니다.
하지만, 님의 경우는 여러 명 응모 테스트에서 기대값은 100인데 실제값이 0으로 나왔다고 하셨으므로, 여러 가지 가능성을 고려해 볼 수 있겠습니다.
- Consumer 모듈 설정 이슈: Kafka나 다른 메시징 시스템을 사용하는 경우, Consumer 설정 문제로 메시지를 올바르게 읽지 못해 처리 로직이 실행되지 않았을 수 있습니다.
- 데이터베이스 연동 이슈: 응모 테스트의 경우 데이터베이스에 대한 접근 및 업데이트가 동반되기 마련입니다. 트랜잭션이나 데이터베이스 연동 설정에 문제가 있을 경우, 올바른 데이터 처리가 이루어지지 않아 테스트가 실패할 수 있습니다.
- 테스트 환경 차이: 강의에서는 특정 환경에서 테스트가 통과하지만, 님의 환경에서는 추가적인 설정이나 의존성 문제로 인해 테스트 결과가 달라질 수 있습니다.
이러한 이슈를 해결하기 위해서는 다음과 같은 접근 방법을 추천합니다.
- 로깅 강화: 실패하는 테스트 주변에 로깅을 추가하여, 실제 내부 상태와 흐름을 파악할 수 있도록 합니다.
- 환경 비교: 강의 환경과 님의 환경의 차이를 점검해 보세요. Kafka 버전, 설정 파일, 엔티티 초기화 상태 등을 확인해 볼 필요가 있습니다.
- 단계적 디버깅: Consumer 모듈을 시작부터 종료까지 단계적으로 디버깅하여, 예상대로 동작하지 않는 부분을 찾아냅니다.
이 과정에서 Spring Boot 또는 Kafka 관련 공식 문서를 참고할 수도 있습니다:
Spring Boot 테스트 자동 설정 관련:
- 문서 링크: Spring Boot Reference Documentation
Kafka Streams 관련 정보:
- 문서 링크: Kafka 3.6 Documentation
이 정보들이 문제 해결에 도움이 되기를 바랍니다.





