2021-10-11

1011 spring boot test


 @RunWith 

@SpringBootTest

로 했을 때의 차이??

이상하게 - @Runwith(SpringBoot4TestRunner.class)로 돌리면 ApplicationContext가 찾아지는데

단순히 @SpringbootTest로 붙이면 못찾더라. 왜지?

테스트 쉽게하라고 만들어준 어노테이션이 아니었던 건가?!!



-----

확인결과

 @Runwith(SpringBoot4TestRunner.class)로 돌리면, 단위테스트. 정말로 test에 필요한 최소한의 클래스만 올려줌. 만약에 @Component등.. bean으로 등록한 애들 가져오고 싶은거면

1. @ContextConfiguration으로 지정해서 - 테스트하고 싶은 클래스들만 가져온다

2.

@BootstrapWith(SpringBootTestContextBootstrapper.class)


이용해서 . 빈들 다 띄울수도 있다.

특히 저 둘 어노테이션들은 @SpringBootTest어노테이션안에 들어가 있음. 그래서 @SpringBootTest를 붙이면 모든 클래스를 올려주는 통합테스트가 된다. 

스프링부트가 만들어주는 각종 AutoConfig하는 클래스들과 내가 만든 모든 빈들 전부 등록해준다. 안으로 들어가보면.. mvc (web일경우.) 부터시작해서 각종 autoconfigure클래스들이 들어오는 걸 확인할 수 있다.


3. @ExtendWith 어노테이션 : JUnit4 -> 5로 확장해줌. 

댓글 없음:

댓글 쓰기

0328 fdisk, mkfs, mount, fstab

 1. 하드디스크를 붙인다. 2. fdisk -l로 하드디스크를 확인한다.  - interactiive한 커맨드모드 사용하여 (m) 붙인 하드디스크의 파티셔닝을 한다.  - 마지막에 w를 해야 실제로 반영이 된다.  3. mkfs를 하여 어떤 파일시스...