JUnit5 (Vintage) initializationError при использовании @ParameterizedTest и @RunWith (Parameterized.class) - PullRequest
0 голосов
/ 29 марта 2019

Я сталкиваюсь с ошибкой initializationError, когда пытаюсь использовать параметризованную функцию JUnit 5.

@ExtendWith(MockitoExtension.class)
@RunWith(Parameterized.class)
public class ServiceTest {

    @InjectMocks
    Service service;

    private static Stream<Arguments> getArguments() {
        return Stream.of(
                Arguments.of("something", "result1", "result2"),
                Arguments.of("another", "result3", "result4")
        );
    }

    @ParameterizedTest
    @MethodSource("getArguments")
    @DisplayName("Test parseEndpoint method")
    void testMethod(String arg1, String result1, String result2) {

        final String[] strings = service.doSomething(arg1);

        assertEquals(result1, strings[0]);
        assertEquals(result2, strings[1]);
    }

}

Затем я вижу, что мой тест выполняется механизмом Parameterized и модулем JUnit Vintage.Дело в том, как отключить такой класс, чтобы он запускался только Parameterized.class?!

1 Ответ

4 голосов
/ 29 марта 2019

Вы смешиваете JUnit 4 и 5 в одном классе.

Удалите @RunWith (Parameterized.class), он вам не нужен.Удалите весь другой код из пакетов junit 4, если он есть.

После этого ваш тест будет в порядке.

...