구현이 쉬움.
@Transactional
Annotation 이 없기 때문에 별도 코드가 필요하다.describe() 내에 test 별로 서로 다른 데이터를 넣는다.
실제 DB 시나리오에 가깝다.
대전제: 각 테스트는 고유한 record 만을 건드려야한다.
Parallel Test 용이
Input test case uniqueness is required.
독립이 보장되어야함. (random value generation 이 필요할 수 있음.)
Test case uniqueness is not required.
Parallel test 불리
Multi process 인 경우 concurrent test 실행시 충돌가능.
ex) 특정 Process 에서는 DB 삭제중이면서 다른 Process 에서는 DB 조회중