강의

멘토링

커뮤니티

Cộng đồng Hỏi & Đáp của Inflearn

Hình ảnh hồ sơ của bradley
bradley

câu hỏi đã được viết

Phát triển API REST dựa trên mùa xuân

Kiểm tra với các thông số

Junit5 ParameterizedTest 를 이용해보았습니다.

Viết

·

724

18

    @ParameterizedTest
    @MethodSource("paramsForTestFree")
    public void testFree(int basePrice, int maxPrice, boolean isFree) {
        // given
        Event event = Event.builder()
                .basePrice(basePrice)
                .maxPrice(maxPrice)
                .build();

        // when
        event.update();

        // then
        assertThat(event.isFree()).isEqualTo(isFree);
    }

    @ParameterizedTest
    @MethodSource("paramsForTestOffline")
    void testOffline(String location, boolean isOffline) {
        // given
        Event event = Event.builder()
                .location(location)
                .build();

        // when
        event.update();

        // then
        assertThat(event.isOffline()).isEqualTo(isOffline);
    }

    private static Stream<Arguments> paramsForTestFree() { // argument source method
        return Stream.of(
                Arguments.of(0,0, true),
                Arguments.of(100, 0, false),
                Arguments.of(0, 100, false),
                Arguments.of(100, 200, false)
        );
    }

    private static Stream<Arguments> paramsForTestOffline() { // argument source method
        return Stream.of(
                Arguments.of("강남", true),
                Arguments.of(null, false),
                Arguments.of("        ", false)
        );
    }

JUNIT5를 이용하시는분들에게 도움이 되었으면 좋겠습니다.

springrest-apijava

Câu trả lời 4

0

좋은 예제 감사합니다!

 

0

저처럼 헤매고 있으실 분이 있을 까봐 댓글 남깁니다.

저는 현재 Spring boot 2.7.4 사용중인데요,
해당 버전에 의존하고 있는 Junit5 버전은 5.8.2입니다.

따라서 pom.xml에서도

5.8.2 버전의 junit-jupiter-params을 등록해주어야 합니다.

그렇지 않다면 NoSuchMethodError를 겪으실 겁니다.

저처럼 mvnrepository에서 항상 최신거만 가지고 오시는 분들 중 오류가 나시는 분은 버전 확인해보시면 좋을 것 같습니다.

 

0

감사합니다

찾고있었는데 어떻게 해야하나 고민하고 있었어요 ㅎㅎ

0

whiteship님의 프로필 이미지
whiteship
Người chia sẻ kiến thức

좋은 예제 공유해 주셔서 감사합니다. 귿귿!

Hình ảnh hồ sơ của bradley
bradley

câu hỏi đã được viết

Đặt câu hỏi