" async="async"> ', { cookie_domain: 'auto', cookie_flags: 'max-age=0;domain=.tistory.com', cookie_expires: 7 * 24 * 60 * 60 // 7 days, in seconds }); IntelliJ IDEA에 JUnit 추가하기 / 테스트 코드 작성 :: 일단

IntelliJ IDEA에서 JUnit을 추가하고 테스트 코드를 작성해보자.

 

아래 코드는 Java의 메서드 오버로딩 예제 코드이다.

 

Main.java

public class Main {
    public static void main(String arg []){

        Multiplier multiplier = new Multiplier();

        System.out.println(multiplier.Multiply(2,6));

        System.out.println(multiplier.Multiply(2,3,4));

    }
}

Multiplier.java

public class Multiplier {

    public int Multiply(int a, int b){
        return a * b;
    }

    public int Multiply(int a, int b, int c){
        return a * b * c;
    }
}

 

 

위 코드에서 Multiplier 클래스가 잘 작동되는지 JUnit을 통해 테스트해보자!

 

0. 테스트 폴더 생성

먼저 가장 상위 폴더인 프로젝트(TestOverloading) 폴더에서 우클릭하여 New - Directory를 클릭한다.

 

테스트 클래스 파일을 저장할 디렉터리를 생성한다.

1. 테스트 폴더 지정

테스트 폴더를 생성 후 다시 가장 상위 폴더인 프로젝트명 폴더에서 우클릭하여 Open Module Settings를 클릭한다.

 

생성한 테스트 폴더를 Test Source Folders로 지정하기 위해 test 폴더를 선택한 뒤 Mark as에서 Tests를 선택한다.

test 폴더가 Test Source Folders로 지정이 되면 아래와 같이 초록색 폴더로 바뀐다.

 

2. 테스트 코드 작성

테스트를 하고자 하는 Multiplier 클래스의 클래스명 위에서 우클릭하여 Go to - Test를 클릭한다.

Create New Test... 을 클릭한다.

 

Testing library는 JUnit4를 선택하고 아래의 Fix 버튼을 클릭한다.

JUnit 버전을 선택하면 해당 라이브러리 파일이 다운로드된다.

테스트 클래스 파일 이름을 입력하고(보통 기존 클래스 파일명+Test) 테스트하고자 하는 메서드를 선택하고 OK 버튼을 클릭한다.

MultiplierTest.java 파일이 생성이 되고 테스트 코드를 작성한다.

@Test 어노테이션은 org.junit.Test를 import 하고

테스트를 위한 assertXXX 메서드를 사용하기 위해서는 org.junit.Assert.*를 import 해야 한다.

(multiply() 메서드는 문제없이 테스트를 통과할 것이고 multiply1() 메서드는 실제값이 틀렸기 때문에 에러가 발생할 것이다. - 네거티브 테스트)

import org.junit.Test;

import static org.junit.Assert.*;

public class MultiplierTest {

    @Test
    public void multiply() {
        Multiplier multiplier = new Multiplier();
        assertEquals(multiplier.Multiply(8,9),72);
    }

    @Test
    public void multiply1() {
        Multiplier multiplier = new Multiplier();
        assertEquals(multiplier.Multiply(2,3,4),20);
    }
}

초록색 화살표를 클릭하여 테스트를 실행한다.

하단 콘솔 창에서 테스트 결과를 확인할 수 있습니다. 예상대로 multiply1() 메서드는 테스트 실패했다.

실제값을 수정하고 재 테스트하여 테스트가 성공적으로 실행되었음을 확인할 수 있다.

 

이상 IntelliJ IDEA에서 JUnit을 추가하여 테스트 코드까지 작성해보았다.

생성하는 클래스마다 테스트 클래스를 작성하여 문제가 없음을 확인하는 습관이 필요하다 :)

+ Recent posts