inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)

Kafka를 활용한 데이터 동기화 테스트 ①

테스트 코드 작성

416

구자현

작성한 질문수 1

0

항상 강의 잘 듣고 있습니다!

postman으로 테스트하다가, 이걸 테스트 코드로 작성해 자동화하면 어떨까? 라고 생각을 해서 테스트 코드를 작성 중입니다.

문제는 테스트 코드에서 이벤트 관련 통합 테스트를 어떻게 작성해야 효율적인지 모르겠어요..

기존의 테스트 코드로는 이벤트가 한 번씩 늦게 전달되는 경우도 있어서 간헐적으로 실패를 했습니다. 이를 해결하기 위해서 Timeout을 걸어 일정 시간 이내로 이벤트가 도착하는지 체크하고 있는데, 이렇게 되니 전체적인 테스트 속도가 느려지게 되더라고요. 보통 이벤트 관련 테스트는 어떻게 작성을 하나요?

spring-boot 아키텍처 spring-cloud kafka msa

답변 1

0

인프런 AI 인턴

안녕하세요 구자현 님, 인프런 AI 인턴이에요.

이벤트 관련 통합 테스트의 효율성을 높이기 위해서는 몇 가지 방법을 고려해 볼 수 있습니다.

첫째로, Mocking을 사용하여 테스트 환경을 구성할 수 있습니다. 이를 통해 실제 이벤트 전달과정이 아닌 임의로 생성한 이벤트를 통해 유닛 테스트를 진행할 수 있습니다.

둘째로, 비동기 이벤트 전달을 위해 간단한 큐 시스템을 구축할 수 있습니다. 큐에 이벤트를 넣고 해당 작업을 비동기로 처리하면, 테스트 시간을 단축할 수 있을 것입니다.

셋째로, 테스트 환경에서 효율적인 Timeout을 설정하여 이벤트가 일정 시간 내에 도착하는지 확인할 수 있습니다. Timeout을 명확히 설정하여 실패를 최소화할 수 있습니다.

이외에도 테스트 코드 작성을 위해 유지보수 가능한 코드, 모듈화된 테스트 코드 등을 고려해볼 수 있습니다.

강의를 통해 학습하고 있으시다니 칭찬드리며, 테스트 코드 작성에 효율성을 높이기 위해서 다양한 방법을 시도해보시길 권장드립니다. 화이팅하세요!

kafka 업데이트 강의 듣고 시포요

0

82

1

강의 교안

0

68

1

마이크로서비스간 통신 시, 인증 처리

0

77

1

api gateway 에서 인증 처리

0

62

1

섹션 19 질문드립니다

0

50

1

강의 자료 업데이트

0

80

1

부하분산 강의 섹션

0

55

1

강의자료는 어디에서?

0

68

1

강의 자료는 어디서 다운 받을 수 있나요?

0

108

1

전체 사용자 조회시 오류

0

56

1

혹시 pk 외 별도의 id 를 부여한 이유가 있을까요 ??

0

107

2

학습 방향

0

93

2

카프카 커넥터 사용 목적 문의

0

84

2

kafka 강의

0

104

2

서비스 디스커버리 종류

0

85

2

강의 자료에 대해서 궁금해요

0

113

2

GlobalFilter, LoggingFilter가 동작하지 않습니다.

0

87

2

Kafka Source Connect 버전 에러

0

82

2

소스커넥터는 사용안한 거 맞죠?

0

79

2

강의자료 업데이트 문의

0

93

2

강의에서 BCryptPasswordEncoder 에 역할(5-2)

0

55

1

강의 업데이트 계획이 궁금합니다.

0

110

2

MSA 애플리케이션에 Spring Web과 Spring Data JPA를 사용하는 것이 바람직한지 궁금합니다. (MSA 설계와 관련된 질문입니다)

0

160

2

어떤 것이 업데이트 된 건가요?

0

160

2