728x90
반응형
Junit 이란 ?
java 에서 독립된 단위 테스트를 지원해주는 프레임워크이다.
@Test 메서드가 호출이 될 때마다 새로운 인스턴스를 생성하여 독립적인 테스트를 이루어지게 한다.
메이븐은 아래와 같이 추가해주었다.
<!-- https://mvnrepository.com/artifact/junit/junit -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
<scope>test</scope>
</dependency>
Junit test 코드는 아래와 같이 작성하였다.
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import com.rsn.POMS.api.poms.user.service.PomsUserService;
@SpringBootTest
class BinsooApplicationTests {
@Autowired
PomsUserService service;
@Test
public void binsooTest1() {
System.out.println("BINSOO JUNIT TEST 111111 !!!");
}
@Test
public void binsooTest2() {
System.out.println("BINSOO JUNIT TEST 222222 !!!");
}
}
Junit Test 를 Class 를 기준으로 하니까 성공
개별 method 를 실행시키려면 Junit tab 에서 각각 실행이 가능하다.
BinsooTest1 이 실행이 된다.
그리고 Run 시킬 때마다 서버가 리로딩 되니깐 내가 '왜 이렇게 무겁지 ? 이게 단위 테스트 인가?' 라는 의문을 가졌는데 한 선배에게 질문을 했는데 스프링의 라이클에 대해 더 이해해보라는 피드백을 받았다.
한번 더 찾아보니까 왜 Junit 실행 시킬 때마다 저렇게 쭉 리로딩 하는지 이해가 슬슬 갔다.
빈도 등록해야 하고, db 와 커넥션도 맺어야 하고,
하나의 서비스가 실행되기 위해서는 전체가 로딩이 되어야 하니깐 ,,,
이렇게 하나 더 배웠당 ψ(._. )>
728x90
반응형
'개발중 > Spring' 카테고리의 다른 글
http 정보 console 에서 요청 확인하는 설정 logging.level.org.apache.coyote.http11=debug (0) | 2022.03.25 |
---|---|
@ServletComponentScan (0) | 2022.03.25 |
@Transactional 어노테이션 적용 시 롤백이 안되는 경우 (2) | 2022.01.13 |
스프링 부트 port 가져오기 (0) | 2021.12.14 |
[ 스프링 ] DispatcherServlet ? (0) | 2021.12.03 |