Источник многомерного файла Junit5JAVA

Программисты JAVA общаются здесь
Anonymous
Источник многомерного файла Junit5

Сообщение Anonymous »

Мне нужно написать тест, который требует настройки и реальных тестовых данных.
Упрощенный код будет выглядеть так:

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

//given config
purchase_configs.add(pc1);
purchase_configs.add(pc2);

sales_configs.add(sc1);
sales_configs.add(sc2);

// given data
input_value = ....
//given expected output
expected_value = ....

//when
result = calculate(purchase_configs, sales_configs, input_value)

//then
assertEquals(expected_value, result)
На самом деле конфигурации и входные значения довольно сложны, поэтому я хочу перенести их в файл/файлы, например. использование @CSVFileValue
За исключением параметров, логика тестирования та же.
Проблема в том, что количество конфигураций покупок и продаж может различаться. Иногда это ПК1, ПК2, иногда только ПК1, иногда нет, иногда больше. То же самое и с продажами.
Я знаю, что могу написать несколько тестов — по одному на количество конфигураций, но это выглядит некрасиво.
Я знаю, что могу использовать @MethodSource и сгенерировать список переменных параметров, но тогда мне нужно написать весь код для анализа CSV/JSON или любого другого файла или иметь много кода Java для создания объектов вручную, а также, если возможно, я бы хотел внедрить только важные/значимые параметры, все остальные могут использовать некоторые параметры по умолчанию/вычисленные, чтобы не ухудшать читабельность.
Есть ли какой-нибудь умный способ использовать junit @ParameterizedTest для достижения цели который имеет один тестовый метод с параметрами и, если возможно, не требует самостоятельного создания читателей и парсеров файлов?

Подробнее здесь: https://stackoverflow.com/questions/769 ... ile-source

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