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을 추가하여 테스트 코드까지 작성해보았다.
생성하는 클래스마다 테스트 클래스를 작성하여 문제가 없음을 확인하는 습관이 필요하다 :)
'IntelliJ IDEA' 카테고리의 다른 글
IntelliJ IDEA 프로젝트 생성 / 클래스 생성 / HelloWorld 출력 (0) | 2019.05.22 |
---|