Как параметризировать с помощью строковых массивов в 5 -й юните 5JAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Как параметризировать с помощью строковых массивов в 5 -й юните 5

Сообщение Anonymous »

Я хотел бы написать параметризованный тест junit 5 , который принимает строковые массивы (

Код: Выделить всё

String[]< /code>) как параметр: < /p>

@ParameterizedTest
@MethodSource("stringArrayProvider")
void parseFirstAndSecondInt(String[] args) {
Arguments arguments = new Arguments(args);

assertEquals(1, arguments.getFirst());
assertEquals(2, arguments.getSecond());
}
Я не уверен, как предоставить коллекцию/поток/итератор строковых массивов. Я безуспешно попробовал следующий подход с @methodsource < /code> аннотацией < /p>

Код: Выделить всё

static Stream stringArrayProvider() {
return Stream.of(
new String[]{"1", "2"},
new String[]{"1", "2", "3"});
}
< /code>

Но я получаю это исключение: < /p>

org.junit.jupiter.params.converter.ArgumentConversionException:
No implicit conversion to convert object of type java.lang.String to type [Ljava.lang.String;
Что было бы хорошим дизайном/решением для такого рода параметризованного теста?


Подробнее здесь: https://stackoverflow.com/questions/469 ... in-junit-5
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»