▼ Backend/JUnit

JUnit | Eclipse에서 JUnit 테스트 하기

Valar 2021. 2. 12. 11:18
반응형

▶ JUnit이란

자바 프로그래밍 언어용 유닛 테스트 프레임워크이다.
테스트 주도 개발 면에서 중요하며 SUnit과 함께 시작된 XUnit이라는 이름의 유닛 테스트 프레임워크 계열의 하나이다.

 

1. 프로젝트 우 클릭 Properties Java Build Path Add Library

 

 

 

2. JUnit 선택 후 Next

 

 

 

3. JUnit Version 확인 후 Finish

 

 

 

4. 직접 사용해보기 위해서 package(com.podo.junit.sample)를 만들어 Calculator 클래스를 작성했다.

 

public class Calculator {   
    public int sum(int num1, int num2) {
        return num1 + num2;
    }
}

 

 

5. 작성한 Calculator.java 파일 우 클릭 New Other Java JUnit JUnit Test Case

 

 

 

6. 테스트로 설정된 파일이 맞는지 한번 더 확인 후 Next

 

 

 

7. Test Methods를 선택 후 Finish

 

 

 

8. @Test 어노테이션이 붙은 테스트 함수가 생성된다.

 

package com.podo.junit.sample;

import static org.junit.jupiter.api.Assertions.*;
import org.junit.jupiter.api.Test;

class CalculatorTest {

    @Test
    void testSum() {
        fail("Not yet implemented");
    }
}

 

 

9. testSum() 메소드에 테스트 코드 작성

 

package com.podo.junit.sample;

import static org.junit.jupiter.api.Assertions.*;
import org.junit.jupiter.api.Test;

class CalculatorTest {

    @Test
    void testSum() {
        Calculator calculator = new Calculator();
        assertEquals(30, calculator.sum(10, 20));
    }
}

 

 

10. 테스트할 클래스 우 클릭 > Run As JUnit Test로 실행한다.

 

 

 

( O ) 예상 결과와 동일한 모습

 

 

( X ) 예상 결과와 달라 Trace가 노출되는 모습

 

 

 

그 외에 간단한 테스트 메소드

assertArrayEquals(a, b); 
 배열 A와 B가 일치함을 확인한다.

assertEquals(a, b);
 객체 A와 B가 일치함을 확인한다.

assertEquals(a, b, c);
 객체 A와 B가 일치함을 확인한다.
 a: 예상 값, b:결괏값, c: 오차범위

assertSame(a, b); 
 객체 A와 B가 같은 객임을 확인한다.

assertTrue(a); 
 조건 A가 참인가를 확인한다.

assertNotNull(a); 
 객체 A가 null이 아님을 확인한다.

 


JUnit User Guide
 

JUnit 5 User Guide

Although the JUnit Jupiter programming model and extension model will not support JUnit 4 features such as Rules and Runners natively, it is not expected that source code maintainers will need to update all of their existing tests, test extensions, and cus

junit.org

반응형