Spring Test

이 문서에서는 Spring에서 test를 수행하는 방법에 대해 살펴본다.

pom에 의존성 추가

spring test를 수행하기 위해서는 두 가지 모듈이 필요하다.

  • spring-test

  • junit

maven 중앙 저장소에서 버전을 확인한 뒤 pom.xml에 추가한다.

pom.xml

<dependencies>
	...(생략)...
	<dependency>
		<groupId>org.springframework</groupId>
		<artifactId>spring-test</artifactId>
		<version>${org.springframework-version}</version>
	</dependency>
	<dependency>
	    <groupId>junit</groupId>
	    <artifactId>junit</artifactId>
	    <version>4.12</version>
	    <scope>test</scope>
	</dependency>
	...(생략)...
</dependencies>

dependency를 추가한 뒤 업데이트를 수행한다.

Test Class 생성

Test Class는 기존과 다른 소스폴더에 생성한다.

src/test/java와 src/test/resources는 빌드시 제외되기 때문에 마음대로 테스트를 만들어 수행할 수 있다.

src/test/java에 있는 com.hakademy.spring11 패키지에 클래스를 생성한다.

com.hakademy.spring11.Test01

package com.hakademy.spring11;

import org.junit.Test;

public class Test01 {

	@Test
	public void standalone() {
		System.out.println("junit test 실행");
	}
	
}

Standalone Test

@Test는 JUnit에서 제공하는 Annotation이며 JUnit으로 실행 시 독립적으로 기능을 수행하는 테스트케이스가 된다. 메소드는 반드시 반환형이 void이며 매개변수가 없어야 한다. @Test는 여러 개 만들 수 있으며, 이 외에도 다양한 Annotation을 JUnit에서 지원한다.

Test case 실행

작성된 테스트케이스(@Test)를 실행할 때에는 JUnit Test를 선택하여 실행해야 한다.

실행하면 다음과 같이 JUnit 결과창이 나오며 테스트 실행 결과를 알려준다.

Test case 분석

테스트 케이스는 성공과 실패로 결과가 나뉜다.

또한 소요 시간 등이 나오기 때문에 다양한 정보를 통해 단위 기능을 테스트할 수 있도록 지원한다.

Last updated