Spring/Spring 이야기
Spring에서 Junit 관련 기초 정보
seungdols
2015. 12. 21. 13:59
Junit이 테스트를 수행하는 방식
- 테스트 클래스에서 @Test가 붙은 public이고, void형이며 파라미터가 없는 테스트 메소드를 모두찾는다.
- 테스트 클래스의 오브젝트를 하나 만든다.
- @Before가 붙은 메소드가 있으면 실행한다.
- @Test가 붙은 메소드를 하나 호출하고, 테스트 결과를 저장해둔다.
- @After가 붙은 메소드가 있으면 실행한다.
- 나머지 테스트 메소드에 대해 2~5번을 반복한다.
- 모든 테스트 결과를 종합해서 돌려준다.
실제로는 더 복잡하지만, 간단하게 말하면 위와 같이 동작한다고 말 할 수 있다.
테스트 클래스 내에 테스트 메소드가 2개 있다면, 총 2개의 오브젝트를 만든다. 즉, 테스트 메소드를 실행할 때마다 테스트 클래스의 오브젝트를 만든다.
어플리케이션 컨텍스트를 딱 한 번만 생성하고자 할 때는 Junit의 @BeforeClass static method를 사용하면 된다.