공부이야기/[Spring.210428~]
[스프링 입문] 회원 리포지토리 테스트 케이스 작성
Nameless
2021. 4. 30. 18:11
@Test는 서로 의존관계 없이 설계가 되어야함.
하나의 Test 가 끝날 때마다 저장소나 공용데이터들을 깔끔하게 지워야 문제가 발생하지 않는다.
Test 관련해서 깊이있게 공부하기!
1
2
3
4
5
6
7
8
9
10
11
12
|
class MemoryMemberRepositoryTest {
MemoryMemberRepository repository = new MemoryMemberRepository();
//Test 끝날떄마다 repository 지워주는 코드
@AfterEach
public void afterEach(){
repository.clearStore();
}
...
}
|
cs |
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
public class MemoryMemberRepository implements MemberRepository{
private static Map<Long, Member> store = new HashMap<>();
private static long sequence = 0L;
...
@Override
public List<Member> findByAll() {
return new ArrayList<>(store.values());
}
public void clearStore(){
store.clear();
}
}
|
cs |
+ TDD (테스트 주도 개발)
: 검증할 수 있는 틀을 먼저 만든 후 작품이 완성함.