직접 구현하며 살펴본 스프링 부트 동작 방식들과 직접 구현한 코드들이 실제 스프링 부트에서도 동일하게 동작하는지 검증

스프링 부트의 자동 구성과 테스트로 전환

  1. 기존에 작성한 자동 구성관련 코드 파일들 전체 삭제 진행(config 패키지, imports 파일)

  2. @MySpringBootApplication@SpringBootApplication로 변경

  3. properties 수정

    image.png

  4. HellobootApplication 실행으로 서버를 실행시키고 HelloApiTest 수행

    image.png

    테스트가 성공적으로 동작함

    ⇒ properties의 설정 정보만 변경하더라도 스프링 부트의 자동 구성이 동일한 방식으로 서블릿 컨테이너를 띄워주고 내부 프로퍼티를 변경하고, dataSource를 만드는 쪽에서는 properties 정보를 이용하여 DB와 연결을 수행하는 것을 확인할 수 있음

  5. HellobootTest 애너테이션 코드 파일 삭제 후 스프링 부트에 있는 기능을 이용하여 테스트 작성

  6. HelloRepositoryTest, HelloServiceCountTest 에서는 @SpringBootTest 애너테이션 이용

  7. DataSourceTest 수행

    Pasted Graphic 10.png

  8. HelloRepositoryTest 수행

  9. HelloServiceCountTest 수행

10 . HelloServiceTest 수행 (HelloServiceTest는 단위 테스트이므로 문제없이 잘 작동할 것)

  1. JdbcTemplateTest 수행

각각의 테스트를 별도로 수행했을 때 모두 성공한 것을 확인할 수 있음

테스트를 전부 수행하더라도 성공할 것

→ 각각의 테스트에서 서로 영향이 가지 않도록 @Transactional을 추가했기 때문에

단점