[nextstep_TDD_클린코드] set 컬렉션에 대한 학습 테스트

봄도둑·2023년 1월 20일
0

nextstep에서 진행하는 자바 플레이그라운드 with TDD, 클린코드 학습 내용입니다. 혼자 작성해본 연습 코드, 피드백 받은 내용을 정리합니다. 해당 코드를 더 나은 방향으로 개선할 수 있다면 댓글로 조언 꼭 부탁드립니다!

public class setTest {
    private Set<Integer> numbers;

    @BeforeEach
    void setUp() {
        numbers = new HashSet<>();
        numbers.add(1);
        numbers.add(1);
        numbers.add(2);
        numbers.add(3);
    }

    @Test
    public void Set_콜렉션의_사이즈_구하기() {
        assertThat(numbers.size()).isEqualTo(3);
    }
    
    @ParameterizedTest
    @ValueSource(ints = {1, 2, 3})
    public void ParameterizedTest_사용해_복수의_인자_넘기기(int compareNumber) {
        System.out.println(compareNumber);
        assertThat(numbers).contains(compareNumber);
        //junit 5에서는 @ParameterizedTest를 쓸 때 @Test는 안 붙여도 됨 -> 붙여서 쓸 경우
        // org.junit.jupiter.api.extension.ParameterResolutionException: No ParameterResolver registered for parameter [int arg0] in method
        //에러 발생
    }

    @ParameterizedTest
    @CsvSource(value = {"1:true", "2:true", "3:true", "4:false", "5:false"}, delimiter = ':')
    public void CsvSource를_사용해_입력한_값에_따라_다른_결과값_테스트하기(int compareNumber) {
        assertThat(numbers).contains(compareNumber);
    }
}
profile
배워서 내일을 위해 쓰자

0개의 댓글