문서의 선택한 두 판 사이의 차이를 보여줍니다.
양쪽 이전 판 이전 판 다음 판 | 이전 판 마지막 판 양쪽 다음 판 | ||
java:mockito [2022/08/22 16:36] kwon37xi [JUnit 5] |
java:mockito [2022/08/24 15:51] kwon37xi [mockStatic] |
||
---|---|---|---|
줄 86: | 줄 86: | ||
@MockitoSettings(strictness = Strictness.LENIENT) | @MockitoSettings(strictness = Strictness.LENIENT) | ||
</ | </ | ||
+ | * '' | ||
===== mockStatic ===== | ===== mockStatic ===== | ||
- | * static method mocking | + | * static method mocking. 특히 '' |
* 항상 '' | * 항상 '' | ||
<code java> | <code java> | ||
- | | + | import static org.mockito.Mockito.mockStatic; |
- | try (MockedStatic mocked = mockStatic(Foo.class)) { | + | |
- | | + | |
- | | + | |
- | | + | |
- | } | + | |
- | | + | |
- | </ | + | |
+ | assertEquals(" | ||
+ | try (MockedStatic< | ||
+ | mocked.when(Foo:: | ||
+ | // 혹은 Mockito.when(Foo.method()).thenReturn(" | ||
+ | assertEquals(" | ||
+ | mocked.verify(Foo:: | ||
+ | } | ||
+ | assertEquals(" | ||
+ | </ | ||
+ | * 만약 mocking 할 필요가 없는 다른 static method가 호출된다면 실제 코드를 호출하게 명시적으로 지정해야 한다. | ||
+ | <code java> | ||
+ | when(LocalDateTime.from(Mockito.any())).thenCallRealMethod(); | ||
+ | </ | ||
===== mockConstruction ===== | ===== mockConstruction ===== | ||
* 생성자 mocking | * 생성자 mocking |