[JAVA] Junit InvalidTestClassError 오류 원인과 해결 방법

2024. 1. 29. 20:30·스터디/JAVA
728x90

 

 

목차

     

     

     

    1. InvalidTestClass Error

    테스트 코드를 작성하다가 InvalidTestClassError 를 보게되었습니다.

     

    • 작성한 코드
    import org.junit.jupiter.api.Test;
    ...
    
    @RunWith(SpringRunner.class)
    @SpringBootTest(classes = TestApplication.class)
    @ActiveProfiles(resolver = TestProfileLoader.class, inheritProfiles = true)
    @Transactional
    @Rollback
    public class TestCode {
    
    	@Test
    	public void test() {
    		...
    	}
    }

     

    • 에러 메시지
    org.junit.runners.model.InvalidTestClassError:Invalid test class
    ...(이하 생략)

     

    코드 상으로는 틀린 부분이 없어 보였는데 왜 에러가 발생했는지 원인을 찾아보았습니다.

     

    2. 오류 원인

     

    사용하는 Junit 의 버전과 @Test 어노테이션 관련해서 import 한 모듈이 달라 발생하는 오류입니다.

    위 코드에서는 Junit4 를 사용하여 tc 를 작성했지만 import 한 모듈은 Junit5에서 지원하는 @Test 어노테이션의 모듈을 import 해와서 발생하였습니다.

     

     

    3. 해결 방법

    Junit4

    import org.junit.Test;

     

    Junit5

    import org.junit.jupiter.api.Test;

    단일 jar였던 Junit4 와 다르게 Junit5는 Junit plat form, Junit Jupiter, Junit Vintage 3가지로 이루어져있습니다. 따라서 Junit 버전에 맞게 Test를 import 해야됩니다.

     

    4. 그 외

    이렇게 수정했는데도 오류가 발생한다면 public 을 빠트렸는지 확인해봅니다.

    • public class
    • public void {method_name}
    728x90
    저작자표시 비영리 변경금지 (새창열림)

    '스터디 > JAVA' 카테고리의 다른 글

    [JAVA] 타임존 알아보기 Instant, LocalDateTime, ZonedDateTime  (0) 2024.07.02
    [JAVA] enum 비교는 equals 일까 == 일까?  (1) 2024.04.28
    [JAVA] Mac M1, M2 openjdk17 설치하기  (0) 2024.01.28
    [JAVA] Mac homebrew 설치 및 사용 방법  (1) 2024.01.27
    [JAVA] Fail-Fast 와 Fail-Safe  (0) 2023.08.17
    '스터디/JAVA' 카테고리의 다른 글
    • [JAVA] 타임존 알아보기 Instant, LocalDateTime, ZonedDateTime
    • [JAVA] enum 비교는 equals 일까 == 일까?
    • [JAVA] Mac M1, M2 openjdk17 설치하기
    • [JAVA] Mac homebrew 설치 및 사용 방법
    zoodi
    zoodi
    IT/개발 관련 지식을 기록하는 블로그입니다.
    • zoodi
      오늘의 기록
      zoodi
    • 전체
      오늘
      어제
      • 분류 전체보기
        • 후기
          • 컨퍼런스
          • 일상리뷰
        • 금융경제
          • 뉴스
          • 금융IT용어
          • 경제 및 부동산
        • 코딩 테스트
        • 스터디
          • JAVA
          • Kotlin
          • Spring
          • React, Nextjs
          • 인공지능 AI
          • Cloud & k8s
          • Kafka
          • Database
          • Network
          • Algorithm
          • Hadoop
          • LINUX
          • R Programming
          • 기타 (소공, 보안)
        • 도서
        • 기타
    • 블로그 메뉴

      • 홈
      • 스터디
      • 금융경제
      • 후기
      • 기타
    • 링크

    • 공지사항

    • 인기 글

    • 태그

      리트코드
      Spring
      C++
      이분탐색
      코테공부
      코딩테스트
      Kotlin
      java
      네트워크
      카카오코테
      알고리즘
      kafka
      MySQL
      프로그래머스
      LeetCode
      springboot
      pythoncodingtest
      스프링
      코테
      CodingTest
      스프링부트
      자바
      db
      자료구조
      쿠버네티스
      금융용어
      코딜리티
      Python
      codility
      코딩
    • 최근 댓글

    • 최근 글

    • hELLO· Designed By정상우.v4.10.4
    zoodi
    [JAVA] Junit InvalidTestClassError 오류 원인과 해결 방법
    상단으로

    티스토리툴바