강의

멘토링

커뮤니티

인프런 커뮤니티 질문&답변

No Name님의 프로필 이미지
No Name

작성한 질문수

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

단위/통합 테스트 버전충돌 문제

작성

·

28

0

취준생으로서 아주 유용하게 강의를 듣고있습니다. 그런데 테스트코드를 실행할 때 현재상황에서 기본설정된 junit6이 지원되지않는 상황이고 build.gradle 의존성에서 junit5로 지정변경하고 테스트 케이스를 작성하고 실행할때 junit5와 6이 버전충돌해서 테스트코드가 실행이 안됩니다. 어떻게 해결해야 할까요?

답변 2

0

안녕하세요. No Name님, 공식 서포터즈 y2gcoder입니다.

도움을 드리고 싶지만 질문 내용만으로는 답변을 드리기 어렵습니다.

실제 동작하는 전체 프로젝트를ZIP파일로 압축해서 구글 드라이브로 공유해서 링크를 남겨주세요.

구글 드라이브 업로드 방법은 다음을 참고해주세요.

https://bit.ly/3fX6ygx


주의: 업로드시 링크에 있는 권한 문제 꼭 확인해주세요


추가로 다음 내용도 코멘트 부탁드립니다.

1. 문제 영역을 실행할 수 있는 방법

2. 문제가 어떻게 나타나는지에 대한 상세한 설명 (오류 화면, 오류 로그 포함)


링크: 공식 서포터즈

링크: 자주하는 질문

감사합니다.

0

안녕하세요, 인프런 AI 인턴입니다. No Name님의 질문에 도움을 드리기 위해 관련 정보를 제공하겠습니다.

문제 설명

현재 JUnit6은 공식적으로 존재하지 않으며, 아마도 JUnit5와 관련된 설정 오류일 가능성이 큽니다. JUnit5는 Jupiter, Vintage, Platform 세 가지 모듈로 나눠져 있으며, 각각의 모듈은 JUnit5의 기능을 지원합니다. 의존성 설정에서 문제가 있을 경우 충돌이 발생할 수 있습니다.

해결 방법

  1. build.gradle 수정: JUnit5를 사용할 경우 다음과 같이 설정하면 됩니다.
// JUnit5 의존성 추가
testImplementation 'org.junit.jupiter:junit-jupiter:5.x.x'

// JUnit4를 사용하지 않을 경우, 제거
//testImplementation 'org.junit.vintage:junit-vintage-engine'
  1. JUnit4 제거: JUnit5만 사용하고자 한다면, JUnit Vintage 엔진을 삭제하여 JUnit4와의 충돌 가능성을 제거하십시오.

  2. 테스트 클래스 확인: 테스트 클래스의 import 문을 확인하여 전부 JUnit5 (org.junit.jupiter) 패키지를 사용하고 있는지 확인합니다.

  3. Gradle Refresh: build.gradle을 수정한 후에는 Gradle 프로젝트를 다시 리프레시하여 변경사항이 반영되도록 합니다.

추가 조언

  • JUnit 공식 문서 확인: JUnit5의 공식 문서를 참조하여 최신 설정 방법을 확인하세요.
  • 사용하지 않는 의존성 제거: 불필요한 의존성이 포함되어 있지 않도록 주의합니다.

이러한 방법으로 JUnit5에서의 테스트 설정 문제를 해결할 수 있을 것입니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

No Name님의 프로필 이미지
No Name

작성한 질문수

질문하기