@SpringBootTest
@Transactional
class MemberServiceIntegrationTest {
@Autowired MemberService memberService;
@Autowired MemberRepository memberRepository;
...
@SpringBootTest : Test 클래스에 @SpringBootTest 를 붙여주면 스프링 컨테이너와 테스트를 함께 실행한다.
@Transactional : 테스트 시작 전에 트랜잭션을 시작하고 테스트 완료 후에 항상 롤백한다.
@Transactional를 사용하면 @BeforeEach, @AfterEach 애노테이션을 사용하지 않아도 DB에 데이터가 남지 않아 다음 테스트에 영향을 주지 않는다.
* 트랜잭션 (transaction) : 데이터베이스의 상태를 변경하는 논리적 작업 단위
'JAVA' 카테고리의 다른 글
[Spring boot] 라이브러리 (1) | 2023.10.25 |
---|---|
[Spring] AOP (0) | 2023.10.25 |
[Spring] jdbc.datasource.DataSourceUtils가 import 되지 않는 오류 (0) | 2023.10.25 |
[Spring] 스프링 빈과 의존관계 (0) | 2023.10.25 |
[Spring] @AfterEach, @BeforeEach (0) | 2023.10.24 |