목차
접기
728x90
반응형
Test를 할 때 주로 사용
- Duration.ofSeconds()
- Duration.ofMillis()
- 테스트를 할 때, 해당 메서드의 실행 시간을 확인하는 역할을 한다.
예시
@Test
@DisplayName("스터디 시작")
void create_new_study()
{
assertTimeout(Duration.ofMillis(100), () -> {
new Study(10);
Thread.sleep(300);
});
}
- 해당 메서드의 실행종료까지 소요시간을 확인해서 0.100s를 초과하는 경우에 테스트는 실패한다.
- 메서드 실행 시간을 확인하기 위해서 Thread.sleep을 사용하여 테스트 실패를 유도했다.
- 위의 코드는 메서드가 모두 실행이 된 후(300 millis를 잠재훈 후)까지 시간을 확인해서 테스트 실패 여부를 알려준다.
- 반면에 아래의 코드는 Duration.ofMillis(100)을 넘기면 테스트 실패로 실행을 바로 종료시킨다.
- 그러나 아래 방법은 문제가 많아 권장하지 않는다.
@Test
@DisplayName("스터디 시작")
void create_new_study()
{
assertTimeoutPreemptively(Duration.ofMillis(100), () -> {
new Study(10);
Thread.sleep(300);
});
}
728x90
반응형
LIST
'Java' 카테고리의 다른 글
[ java ] 다운캐스팅( down casting) (0) | 2021.02.07 |
---|---|
[ java ] sts 설치 (version: sts-4.9.0) (0) | 2021.02.07 |
[ java ] Thread.sleep 사용법 (0) | 2021.01.05 |
[ java ] 자바에서 ip 조회 (0) | 2020.12.30 |
[ java ] 자바에서 SHA256으로 hashing 하는 방법 (0) | 2020.12.30 |