[gRPC] gPRC 의존성 추가 과정에서 테스트 전용 프로파일로 인해 발생한 오류

류넹·2024년 9월 10일
1

Trouble Shooting

목록 보기
16/18

⚠️ 오류

  • gRPC 의존성을 추가한 후 서버 실행 시 여러 오류가 발생했고, 실제로는 정상적으로 통과되는 테스트도 실패했다는 메시지가 출력되었다.
  • 오류 내용
Execution failed for task ':test'.
> There were failing tests. See the report at: file:///C:/~~~/reports/tests/test/index.html

* Try:
> Run with --scan to get full insights.
BUILD FAILED in 33s
12 actionable tasks: 12 executed
  • 테스트 실패 내용

하지만 실패한다는 테스트는 실제로 실행해보면 성공하는 테스트였다.




❓ 원인

  • application.ymlgrpc: server: port: 설정 위치가 문제였다.
  • 로컬 환경과 테스트 실행 환경에서 동일한 gRPC 포트를 사용하게 되어 포트 충돌이 발생했다.
    gRPC 포트 설정이 기본 프로파일(로컬과 테스트 환경에서 공통으로 사용되는 프로파일)에 있었기 때문이다.


💡 해결

  • gPRC 포트 설정을 로컬 프로파일로 이동함으로써 충돌을 방지하고, 문제를 해결했다.

  • 기존 application.yml

# 1. 기본값 프로파일
server:
  port: ${SERVER_PORT}

grpc:
  server:
    port: ${GRPC_PORT} # 기존

# ~
# 2. 로컬용 프로파일
---
spring:
  config:
    activate:
      on-profile: local

# ~
# 3. 테스트 실행 전용 프로파일
---
spring:
  config:
    activate:
      on-profile: test

  • 수정 후 application.yml
# 1. 기본값 프로파일
server:
  port: ${SERVER_PORT}

# ~
# 2. 로컬용 프로파일
---
spring:
  config:
    activate:
      on-profile: local

grpc:
  server:
    port: ${GRPC_PORT} # 이동

# ~
# 3. 테스트 실행 전용 프로파일
---
spring:
  config:
    activate:
      on-profile: test

✅ 결과

  • 성공적으로 실행!
profile
학습용 커스터마이징 간단 개발자 사전

0개의 댓글