본문 바로가기
💾 Backend/우아한 테크코스-프리코스

🛸 도메인 로직에 대한 단위 테스트

by 정람지 2023. 11. 5.

https://techcourse-storage.s3.ap-northeast-2.amazonaws.com/9b82d8a360c548fcadd14c551dbcbe06


 

단위 테스트를 위한 클래스 명명 규칙 

"테스트 대상 클래스명 + Test"

import static org.assertj.core.api.Assertions.*;
assertThatThrownBy(() -> {
	// ...
}).isInstanceOf(IndexOutOfBoundsException.class)
  .hasMessageContaining("Index: 2, Size: 2");
import static org.assertj.core.api.Assertions.assertThatExceptionOfType;
assertThatExceptionOfType(IndexOutOfBoundsException.class)
.isThrownBy(() -> {
		// ...
}).withMessageMatching("Index: \\d+, Size: \\d+");

 

 

@Test
void contains() {
    assertThat(numbers.contains(1)).isTrue();
    assertThat(numbers.contains(2)).isTrue();
    assertThat(numbers.contains(3)).isTrue();
}

ParameterizedTest이용해 중복 코드 제거할 수 잇음

 

assertj의 다양한 활용법을 익혀야 하는데..

오늘 너무 춥고.. 강의실은 따뜻하고.. 졸리고..

냠냠..

언니블루베리파운드케이크고마웡..맛잇넹..


[JUnit5] 기본 테스트 어노테이션

 

 

[JUnit5] 기본 테스트 어노테이션(@Test, @BeforeAll, @BeforeEach, @AfterAll, @AfterEach, @Disabled)

본 포스팅은 백기선님의 "더 자바, 애플리케이션을 테스트하는 다양한 방법" 을 보고 정리한 글 입니다. 관심 있으신 분들은 https://www.inflearn.com/course/the-java-application-test 를 살펴보세요 개요 Junit5

gracelove91.tistory.com

@BeforeAll

본 어노테이션을 붙인 메서드는 해당 테스트 클래스를 초기화할 때 딱 한번 수행되는 메서드다.
메서드 시그니쳐는 static 으로 선언해야한다.


 

TDD 테스트 주도 개발

선 테스트 후 개발 방식