반응형 스프링/TDD2 JUNIT5 TDD 이란? 선 테스트 코드 작성, 후 구현. 이는 총 3가지 주요 절차의 반복입니다. 실패 : 지금 구현할 기능의 실패하는 테스트 케이스를 작성 성공 : 테스트 통화시키는 코드 작성 리팩토링 : 코드 개선 TDD 사용 이유 문서화하여 로직 이해돕기 서드파티코드 변경/오류시 체크 기존 동작을 해치지 않으며, 변경점/새코드 검증 2. 사용법 생성주기 (실행 순서 보장X) @BeforeEach : 각 테스트동작이전에 실행 @AfterEach @BeforeAll : 클래스 테스트 맨처음에 한 번 실행 @AfterAll Assert fail() assumingThat("CI".equals(System.getenv("ENV")), () -> { assertEquals(2, calculator.divide(4, .. 2021. 2. 9. TDD 정리 MOCK 사용이유 api 실제호출 -> 느리다 api 항상 가용인지 보장x (의존) 테스트 커버리지의 간극은 존재 생성자 DI 추천 , Autowired 비추 단위 -> @Mock - 스프링자체를 테스트 X 스프링이 우리의 요구를 잘 충족하고 지원하는지 검증 통합 -> @SpringBootTest , @MockBean 테스트에선 WAS 실행 X -> 실행시킬 순 있지만 ,WebMvcTest 추천 리팩토링 방법 assultAll() 사용으로 단언 줄이기 , 하지만 1테스트의 1개의 조건만 BeforeAll BeforeEach 사용 하위테스트 없애기 (notnull -> size >=1) 리터럴 숫자,스트링 없애기 ( 1, url등) 부푼 생성자 -> 한줄로 의미있는 given,arrange data TDD.. 2021. 2. 3. 이전 1 다음 728x90 반응형