Unit Test(1)
👉 Given-When-Then 패턴
- Given : 테스트에 필요한 변수를 정의하거나 Mock 객체를 통해 특정 상황에 대한 행동을 정의.
- When: 실제 테스트를 하는 메소드가 호출되며 테스트를 통한 결과값을 가져온다.
- Then: When 단계에서 나온 결과값을 검증하는 작업을 수행.
👉 JUnit + Mockito
# JUnit : Java 에서 사용되는 대표적인 테스트 프레임워크.
# Mockito : Mock 객체를 쉽게 만들고, 관리하고, 검증할 수 있는 방법을 제공하는 프레임워크.
# Mockito에서 Mock(가짜) 객체의 의존성 주입을 위해 사용되는 3가지 어노테이션.
- @Mock: Mock 객체를 만들어 반환해주는 어노테이션
- @Spy: Stub하지 않은 메소드들은 원본 메소드 그대로 사용하는 어노테이션
- @InjectMocks: @Mock 또는 @Spy로 생성된 가짜 객체를 자동으로 주입시켜주는 어노테이션
ex) UserController에 대한 단위 테스트를 작성하고자 할 때, UserService를 사용하고 있다면 @Mock 어노테이션을 통해 가짜 UserService를 만들고, @InjectMocks를 통해 UserController에 이를 주입 가능.
👉 JUnit의 생명 주기
- @BeforeAll : 테스트를 시작하기 전에 호출되는 메서드
- @BeforeEach : 각 테스트 메서드가 실행되기 전에 동작하는 메서드
- @AfterAll : 테스트를 종료하면서 호출되는 메서드
- @AfterEach : 각 테스트 메서드가 종료되면서 호출되는 메서드
'❤️🔥TIL (Today I Learned)' 카테고리의 다른 글
[TIL] 2023-01-30(63day) / 알고리즘 (0) | 2023.01.30 |
---|---|
[TIL] 2023-01-27(63day) / Unit Test(2) (0) | 2023.01.29 |
[TIL] 2023-01-25(61day) / 프로젝트(6day) (0) | 2023.01.25 |
[TIL] 2023-01-20(60day) / 프로젝트(5day) (0) | 2023.01.23 |
[TIL] 2023-01-19(59day) / 프로젝트(4day) (0) | 2023.01.20 |
댓글