JUnit 시작하기
org.junit.jupiter.api.Assertions.*
assertEquals(expected, actual)
@DisplayNameGeneration(DisplayNameGenerator.ReplaceUnderscores.class)
class StudyTest {
@Test
@DisplayName("스터디 만들기")
void create_new_study() {
Study study = new Study();
assertNotNull(study);
// 메시지를 적어줘야 테스트 실패 시 확인이 용이하다.
assertEquals(StudyStatus.DRAFT, study.getStatus(), "스터디를 처음 만들면 상태값이 DRAFT여야 한다.");
// 람다로 표현하기
// 람다로 표현하면 -> 뒤의 실행을 테스트가 실패했을 때만 하기 때문에, 문자열 연산을 최대한 하지 않는 이점이 있다.
// 문자열 연산에 부담이 가는 테스트라면 람다를 사용해 성능을 높일 수 있다.
assertEquals(StudyStatus.DRAFT, study.getStatus(), () -> "스터디를 처음 만들면 상태값이 DRAFT여야 한다.");
// executable로 표현하기
// 이 표현을 간추린 것이 위의 람다식이다.
assertEquals(StudyStatus.DRAFT, study.getStatus(), new Supplier<String>() {
@Override
public String get() {
return "스터디를 처음 만들면 상태값이 DRAFT여야 한다.";
}
});
}
}assertNotNull(actual)
assertTrue(boolean)
assertAll(executables...)
assertThrows(expectedType, executable)
assertTimeout(duration, executable)
Last updated