2021.08.23 TIL

새롭게 배운 것 Done

운동

독서

알고리즘

코딩

JUnit

JUnit 5 구성

Hamcrest 실습

package com.programmers.java.tdd.lms;

import org.junit.Test;
import org.junit.jupiter.api.DisplayName;

import java.util.List;

import static org.hamcrest.MatcherAssert.assertThat;
import static org.hamcrest.Matchers.*;
import static org.junit.jupiter.api.Assertions.assertEquals;

public class HamcrestAssertionTests {

    @Test
    @DisplayName("여러 hamcrest matcher 테스트")
    public void hamcrestTest() {
        assertEquals(2, 1 + 1);
        assertThat(1 + 1, is(2));
        assertThat(1 + 1, anyOf(is(1), is(2))); //1이나 2가 둘다 될 수 있을 때
    }

    @Test
    @DisplayName("컬렉션에 대한 matcher 테스트")
    public void hamcrestListMatcherTest() {
        var prices = List.of(2, 3, 4);
        assertThat(prices, hasSize(3));
        assertThat(prices, everyItem(greaterThan(1)));
        assertThat(prices, containsInAnyOrder(3, 4, 2));
        assertThat(prices, hasItem(greaterThanOrEqualTo(2)));
    }
}

모의 객체

참고

책 - 테스트 주도 개발 시작하기 - 최범균

깨달은 점 FEELING