테스트 주도 개발(TDD)

Tin9oo·2024년 1월 16일

Softeer-WAS

목록 보기
3/3

JUnit

1. 목적

  • 단위 테스트를 위해 사용
  • 테스트를 구동하고 테스트 결과를 확인하는데 중점

2. 어노테이션

  • @Test, @Before, @After, @BeforeEach, @AfterEach 등의 어노테이션을 사용하여 테스트 메서드의 동작을 제어

3. Assertion

  • Assert 클래스의 정적 메서드를 사용하여 단순한 Assertion을 수행
    (예: assertEquals(expected, actual))

4. 단순함

  • 간단하고 직관적인 테스트를 위한 프레임워크
  • 핵심 기능에 중점

AssertJ

1. 목적

  • 풍부한 Assertion 문법을 제공하여 테스트 코드의 가독성을 높이고 풍부한 메시지를 통해 문제의 원인을 신속하게 파악 가능
  • 풍부하고 표현력 있는 Assertion

2. 메서드 체이닝

  • 메서드 체이닝을 활용하여 풍부한 표현력을 제공
    (예: assertThat(actual).isEqualTo(expected).isNotNull())

3. 커스텀 메시지

  • 실패 시 생성되는 에러 메시지를 사용자가 커스터마이징 가능

4. 컬렉션, 객체 테스트

  • 컬렉션과 객체에 대한 다양한 Assertion을 지원
    (예: assertThat(list).hasSize(3).contains("apple").doesNotContain("orange"))

5. 타입 추론

  • Java8 이후의 타입 추론을 활용하여 안정성을 제공
profile
🚙 HMG SOFTEER 3rd | 💻 BE

0개의 댓글