Notice
														
												
											
												
												
													Recent Posts
													
											
												
												
													Link
													
											
									
													Tags
													
											
												
												- 스프링부트
- mysql
- AWS
- PYTHON
- DI
- spring security 6
- SSL
- spring mvc
- java
- join
- ORM
- 1차원 배열
- nginx
- spring boot
- jpa
- hibernate
- 자바
- static
- 스프링
- 문자열
- 프로그래머스
- springboot
- string
- spring
- sql
- select
- @transactional
- 데이터베이스
- Django
- Docker
| 일 | 월 | 화 | 수 | 목 | 금 | 토 | 
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | |||
| 5 | 6 | 7 | 8 | 9 | 10 | 11 | 
| 12 | 13 | 14 | 15 | 16 | 17 | 18 | 
| 19 | 20 | 21 | 22 | 23 | 24 | 25 | 
| 26 | 27 | 28 | 29 | 30 | 31 | 
													Archives
													
											
									개발하는 자몽
@SpringBootTest, @TestConfiguration 본문
김영한 님 인강을 보다가 나온 @SpringBootTest, @TestConfiguration 애노테이션에 대해 간단하게 정리하려고 한다.
@SpringBootTest
스프링 AOP를 적용하려면 스프링 컨테이너가 필요하다. 이 애노테이션이 있으면 테스트 시 스프링 부트를 통해 스프링 컨테이너를 생성한다. 테스트에서 @Autowired 등을 통해 스프링 컨테이너가 관리하는 빈들을 사용할 수 있다.
@TestConfiguration
테스트 안에서 내부 설정 클래스를 만들어서 사용하면서 이 애노테이션을 붙이면, 스프링 부트가 자동으로 만들어주는 Bean들에 추가로 필요한 스프링 빈들을 등록하고 테스트를 수행할 수 있다.
@SpringBootTest //스프링 띄움 -> 필요한 스프링 빈 등록, 의존관계 주입
class MemberServiceV3_3Test {
    public static final String MEMBER_A = "memberA";
    public static final String MEMBER_B = "memberB";
    public static final String MEMBER_EX = "ex";
    @Autowired
    private MemberRepositoryV3 memberRepository;
    @Autowired
    private MemberServiceV3_3 memberService;
    @TestConfiguration
    static class TestConfig { //DI를 위한 빈 등록
        @Bean
        DataSource dataSource() {
            return new DriverManagerDataSource(URL, USERNAME, PASSWORD);
        }
        @Bean
        PlatformTransactionManager transactionManager() {
            return new DataSourceTransactionManager(dataSource());
        }
        @Bean
        MemberRepositoryV3 memberRepositoryV3() {
            return new MemberRepositoryV3(dataSource());
        }
        @Bean
        MemberServiceV3_3 memberServiceV3_3() {
            return new MemberServiceV3_3(memberRepositoryV3());
        }
        
        ...
    }'Java & Kotlin > Spring' 카테고리의 다른 글
| [Spring]JdbcTemplate (0) | 2022.09.30 | 
|---|---|
| 스프링 예외 추상화 (2) | 2022.09.29 | 
| [트랜잭션] @Transactional AOP (0) | 2022.09.23 | 
| [Spring MVC] Model, @ModelAttribute (2) | 2022.09.10 | 
| [Spring MVC] 뷰 템플릿, 템플릿 엔진, thymeleaf (0) | 2022.09.08 | 
			  Comments
			
		
	
               
           
					
					
					
					
					
					
				