작성한 질문수
스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
작성
·
143
0
위 사진을 보시면
afterEach()를 주석 처리하면 회원가입() 메소드가 2번씩 실행되는데요 (그래서 hello member도 2번 들어갑니다)
그 이유가 궁금합니다.
주석 처리하지 않으면 1번만 실행됩니다.
프로그램의 코드는 수업자료의 코드와 완전 동일합니다.
memberRepository.clearStore()이 테스트 메소드의 실행횟수와 무슨 관계가 있는지 모르겠습니다.
답변 1
안녕하세요. 이기정님, 공식 서포터즈 OMG입니다.
첨부하신 이미지처럼 주석처리를 하였다면 @AfterEach와 @Test가 결합해서 동작하는 것으로 보입니다.
@AfterEach도 주석처리해서 확인해주세요.
감사합니다.
다음과 같이 @AfterEach와 @Test가 각각 동작하여 발생한 것으로 예상됩니다.
@AfterEach로 한번 호출 + @Test로 한번 호출 => 총 2번 call
test()로 한번 호출, @AfterEach로 2개의 테스트이므로 각각 실행 => 총 3번 call
대단히 감사합니다.
색깔이 둘다 연해서 헷갈렸네요.
다음과 같이 @AfterEach와 @Test가 각각 동작하여 발생한 것으로 예상됩니다.
@AfterEach로 한번 호출 + @Test로 한번 호출 => 총 2번 call
test()로 한번 호출, @AfterEach로 2개의 테스트이므로 각각 실행 => 총 3번 call