다음과 같은 방법으로 catch 블록을 얻으려면 단위 테스트를 작성하는 방법을 알고 싶습니다. FOM.create (data)는 정적 메서드입니다.Junit을 사용하여 예외를 테스트하는 방법
public String getValue(Data data) {
try {
return FOM.create(data);
} catch (UnsupportedEncodingException e) {
log.error("An error occured while creating data", e);
throw new IllegalStateException(e);
}
}
현재이 내 단위 테스트이지만 catch 블록 충돌하지 않습니다 예외가 단위 테스트 전에 잡은하지 않는 경우
@Test (expected = UnsupportedEncodingException.class)
public void shouldThrowUnsupportedEncodingException() {
doThrow(UnsupportedEncodingException.class).when(dataService).getUpdatedJWTToken(any(Data.class));
try {
dataService.getValue(data);
}catch (IllegalStateException e) {
verify(log).error(eq("An error occured while creating data"), any(UnsupportedEncodingException.class));
throw e;
}
}
처럼
단위 테스트해야 보인다 코드에서이 getUpdatedJWTToken은 어디에 있습니까? – Plog