JUnit

Mixer·2022년 7월 13일
0

JUnit이란?

JUnit은 Java 언어로 만들어진 애플리케이션을 테스트하기 위한 오픈 소스 테스트 프레임워크이다
사실상 Java의 표준 테스트 프레임워크라고 해도 과언이 아니다.

테스트 결과는 Test 클래스로 개발자에게 테스트 방법 미 클래스의 History를 공유가 가능하다
Assert Method로 테스트 케이스의 수행 결과를 판별하며, JUnit4 버전부터 어노테이션으로 간결하게 지원했다
현재는 JUnit5 버전이 나왔다

기본 어노테이션

@Test
: 테스트를 만드는 모듈 역할
@DisplayName
: 테스트 클래스 또는 테스트 메서드의 사용자 정의 표시 이름을 정의
@ExtendWith
: 사용자 정의 확장명을 등록하는데 사용
@BeforeEach
: 각 테스트 메서드 전에 실행됨을 나타냄
@AfterEach
: 각 테스트 메서드 후에 실행됨을 나타냄
@BeforeAll
: 현재 클래스의 모든 테스트 메서드 전에 실행됨을 나타냄
@AfterAll
: 현재 클래스의 모든 테스트 메서드 후에 실행됨을 나타냄
@Disable
: 테스트 클래스 또는 메서드를 비활성화

JUnit을 사용한 테스트 케이스 기본 구조

public class JunitDefaultStructure {
    @Test
    public void test1() {
        // 테스트 하고자 하는 대상에 대한 테스트 로직 작성
    }

    @Test
    public void test2() {
        // 테스트 하고자 하는 대상에 대한 테스트 로직 작성
    }

    @Test
    public void test3() {
        // 테스트 하고자 하는 대상에 대한 테스트 로직 작성
    }
}

위 코드를 보면 테스트하고자 하는 대상이 있으면 public void test1(){...} 같은 void 타입의 메서드를 하나 만들고, @Test 어노테이션을 추가해준다.

Use Assertion Method

Assertion은 '예상하는 결과 값이 참(true)이기 바라는 논리적인 표현'이다

assertEquals(x, y)

  • 객체 x와 y가 일치함을 확인합니다.
    x(예상 값)와 y(실제 값)가 같으면 테스트 통과

assertArrayEquals(a, b);

  • 배열 A와 B가 일치함을 확인합니다.

assertFalse(x)

  • x가 false 인지 확인합니다.

assertTrue(x)

  • x가 true 인지 확인합니다.

assertTrue(message, condition)

  • condition이 true이면 message표시

assertNull(o)

  • 객체o가 null인지 확인합니다.

assertNotNull(o)

  • 객체o가 null이 아닌지 확인합니다.

assertSame(ox, oy)

  • 객체 ox와 oy가 같은 객체임을 확인합니다.
  • ox와 oy가 같은 객체를 참조하고 있으면 테스트 통과
  • assertEquals()메서드는 두 객체의 값이 같은지 확인하고, assertSame()메서드는 두 객체의 레퍼런스가 동일한가를 확인합니다. (== 연산자)

assertNotSame(ox, oy)

  • ox와 oy가 같은 객체를 참조하고 있지 않으면 통과

assertfail()

  • 테스트를 바로 실패처리
profile
Minthug'life

0개의 댓글