Junit 이클립스에서 JUnit 사용하기

황제낙엽 2019.04.02 23:51 조회 수 : 101

sitelink1 https://lyb1495.tistory.com/73 
sitelink2  
sitelink3  
extra_vars4  
extra_vars5  
extra_vars6  

이클립스에는 JUnit이 기본적으로 포함되어 있기 때문에 쉽게 테스트 케이스를 작성하고, 테스트를 해볼 수 있습니다.

 

아래 그림과 같이 Java 프로젝트를 생성하고 Number라는 클래스를 작성합니다.

 

117B6C024BCFABD381.jpg

 

 

Number클래스는 JUnit을 통해 테스트를 실행하게 될 클래스이며, test는 테스트 클래스들이 들어갈 패키지 입니다.(패키지명은 자유롭게 지정할 수 있습니다.)

 

Number 클래스의 코드는 다음과 같습니다.

 

public class Number {  

  

    private int value;  

      

    public Number() {  

        this(0);  

    }  

      

    public Number(int value) {  

        this.value = value;  

    }  

      

    public int add(int rhs) {  

        return value += rhs;  

    }  

      

    public int minus(int rhs) {  

        return value -= rhs;  

    }  

      

    public int multiply(int rhs) {  

        return value *= rhs;  

    }  

      

    public int divide(int rhs) {  

        return value /= rhs;  

    }  

      

    public int getValue() {  

        return value;  

    }  

      

}  

 

테스트 클래스를 작성하기 위해 프로젝트에 JUnit을 추가해야 합니다.

프로젝트의 Properties를 열고 Java Build Path에서 Add Library 버튼을 클릭해 JUnit을 프로젝트에 추가할 수 있습니다.

 

1132BD254BCFA6D5B3.jpg

 

155824244BCFA6EB6D.jpg

 

 

 

선택할 수 있는 JUnit 은 버전3과 버전4가 있는데 본 예제에서는 4를 선택하도록 하겠습니다.

 

1471D90D4BCFA72E0B.jpg

 

 

아래 그림과 같이 JUnit 라이브러리가 프로젝트에 추가된 것을 확인할 수 있습니다.

 

1842F7014BCFAC139E.jpg

 

 

Number 클래스에서 오른쪽 마우스를 클릭해 New - JUnit Test Case를 클릭합니다.

 

아래 그림과 같이 Package를 Number.test로 지정하고 Next를 클릭합니다.

 

152838044BCFAC407E.jpg

 

 

아래 그림과 같이 테스트를 수행할 Number 클래스를 체크하고 Finish 버튼을 클릭하면 테스트 클래스가 생성됩니다.

 

19261A0F4BCFA97105.jpg

 

 

테스트 코드는 다음과 같습니다.

 

 

package Number.test;  

  

import static org.junit.Assert.*;  

  

import org.junit.Test;  

  

import Number.Number;  

  

public class NumberTest {  

  

    @Test  

    public void testNumber() {  

        Number num = new Number();  

        assertEquals(0, num.getValue());  

    }  

  

    @Test  

    public void testNumberInt() {  

        Number num = new Number(10);  

        assertEquals(10, num.getValue());  

    }  

  

    @Test  

    public void testAdd() {  

        Number num = new Number(10);  

        assertEquals(20, num.add(10));  

    }  

  

    @Test  

    public void testMinus() {  

        Number num = new Number(10);  

        assertEquals(5, num.minus(5));  

    }  

  

    @Test  

    public void testMultiply() {  

        Number num = new Number(5);  

        assertEquals(25, num.multiply(5));  

    }  

  

    @Test  

    public void testDivide() {  

        Number num = new Number(20);  

        assertEquals(2, num.divide(10));  

    }  

  

    @Test  

    public void testGetValue() {  

        Number num = new Number(20);  

        assertEquals(20, num.getValue());  

    }  

  

}  

 

테스트를 실행하기 위해 NumberTest 클래스에서 오른쪽 마우스를 클릭해 Run as - JUnit Test를 클립합니다.

 

테스트가 실행되고 아래 그림과 같이 모든 테스트가 성공했음을 확인할 수 있습니다.

 

1573B50D4BCFADF22A.jpg

 

 

만약 테스트가 실패하면 아래 그림과 같이 실패한 테스트와 메세지를 확인할 수 잇습니다.

 

1274440D4BCFAE4F16.jpg

 

 

 

 

번호 제목 글쓴이 날짜 조회 수
57 셀 크기 조정 (자동 크기 조정) 황제낙엽 2011.05.03 7740
56 Cell 의 wrap 설정 (텍스트 개행) file 황제낙엽 2011.05.09 2966
55 POI HSSF, XSSF, SXSSF 성능 분석 file 황제낙엽 2013.11.05 1590
54 병합된 셀의 스타일( border) 설정하기 황제낙엽 2011.05.03 1564
53 Parsing and Processing Large XML Documents with Digester Rules (해석중) file 황제낙엽 2008.05.13 1478
52 POI 셀 스타일 설정을 위한 예제 소스 file 황제낙엽 2008.05.16 1379
51 엑셀(Excel)문서 처리 패키지 황제낙엽 2007.01.22 1334
50 POI-HSSF and POI-XSSF - Java API To Access Microsoft Excel Format Files 황제낙엽 2013.11.05 984
49 Comma Separated Values (CSV) - au.com.bytecode.opencsv file 황제낙엽 2007.01.23 626
48 Parsing, indexing, and searching XML with Digester and Lucene 황제낙엽 2008.05.07 429
47 POI HSSF 기능 가이드 -- 퀵·가이드 (한글) 황제낙엽 2008.05.16 373
46 JUnit 3.8에서 JUnit 4, TestNG 활용으로 황제낙엽 2007.09.17 369
45 Junit 을 이용한 효율적인 단위 테스트 전략 황제낙엽 2007.01.30 317
44 Library & Properties 파일 file 황제낙엽 2011.12.23 313
43 XSSF Examples file 황제낙엽 2011.05.04 254
42 사용자 정의 Appender 정의하여 Log4j 확장하기 황제낙엽 2009.05.28 220
41 log4j-1.2.15.jar 와 log4j.properties 예제 file 황제낙엽 2017.08.04 187
40 접속 클라이언트의 아이피별로 로그 화일 기록하기 file 황제낙엽 2009.06.01 183
39 Comma Separated Values (CSV) - com.Ostermiller.util Java Utilities 황제낙엽 2007.01.23 177
38 Apache Log4j 2 Configuration 파일 설정 황제낙엽 2020.04.01 150