티스토리 뷰
JUnit은 자바에서 제공하는 표준 테스트 도구이다. 스프링도 JUnit을 발판으로 테스트를 하면서 만들어졌다고 한다.
JUnit을 실행하는 방법
대부분의 자바 개발자가 사용하는 이클립스는 JUnit테스트를 지원하는 기능을 제공하고 있다.
@Test가 들어있는 클래스를 선택 - Run - Run as - JUnit Test를 선택하면 실행할 수 있다.
JUnit은 한번에 여러 테스트 클래스를 동시에 실행 할 수도 있다. 이클립스 왼쪽 소스폴더 트리의 프로젝트나 패키지 디렉토리를 선택해서 위에서 설명한 실행방법 대로 하면 JUnit테스트를 한번에 실행해준다.
테스트 클래스 작성방법
JUnit이 하나의 테스트 클래스를 가져와 테스트 하는 방식(과정)
1. 테스트 클래스 내부에서 메서드 레벨에 @Test가 붙고 public void 형을 찾는다.
2. 테스트 클래스의 인스턴스를 만든다.
3. @Before가 붙은 메서드를 수행
4. @Test가 붙은 메서드 하나를 수행
5. @After가 붙은 메서드를 수행
6. 테스트의 결과를 반환
만약에 @Test메서드가 여러개라면 그 수만큼 2번 항목부터 5번까지
public class JunitTest { private int testVal = 0; @Before public void setTestValBefore(){ testVal++; System.out.println("setTestValBefore()>>>>>>>>"+testVal); } @After public void setTestValAfter(){ testVal++; System.out.println("setTestValAfter()>>>>"+testVal); } @Test public void test1(){ System.out.println("test1 method를 탑니다."); } @Test public void test2(){ System.out.println("test2메소드를 탑니다."); } } /* 결과 setTestValBefore()>>>>>>>>1 test1 method를 탑니다. setTestValAfter()>>>>2 setTestValBefore()>>>>>>>>1 test2메소드를 탑니다. setTestValAfter()>>>>2 */
결과를 보면 알겠지만 @Test메서드의 갯수에 따라 매번 해당 클래스 인스턴스를 새로 생성하고, Before, Test, After메서드 순으로 수행을 한다.
'SPRING > 정리' 카테고리의 다른 글
[SpringSecurity] 스프링 시큐리티 jquery ajax사용시 로그인 하게 하기 (1) | 2016.07.29 |
---|---|
요청 파라미터 바인딩 (0) | 2016.04.27 |
[spring] google recapcha 자동가입방지 (0) | 2016.03.24 |
@ControllerAdvice로 전역 예외 관리하기 (0) | 2016.01.15 |
PROFILE 기능으로 서버설정과 로컬 설정을 구분하여 사용하기. (0) | 2016.01.14 |