использование файлов модульного теста json в java-программе - PullRequest
0 голосов
/ 28 марта 2019

Я пытаюсь выполнить модульный тест некоторого кода.У меня есть 2 поля в моих входных данных, которые могут или не могут быть в данных, поэтому я хочу проверить все 4 сценария (ab, a не b, b не a, ни a, ни b).Я создал 4 разных json-файла для использования в качестве ложного ввода, охватывающего каждый сценарий.Я мог бы создать один файл без поля, а затем просто добавить обязательное поле в макет данных для каждого из 4 тестов.Мне кажется, что такой подход слишком сильно контролирует данные теста.Я предпочитаю подход с 4 файлами, но один из моих коллег жалуется на то, что 4 файла практически одинаковы.

Я знаю, что это вопрос мнения, но какой подход лучше?Есть все 4 файла или каждый тест манипулирует данными перед утверждением?

1 Ответ

1 голос
/ 29 марта 2019

Как и я, ваш коллега прав.

Создайте два файла: a.json-part и b.json-part.Давайте a.json-part содержит

"a": .....

и b.json-part содержит аналогичный контент для b (Примечание: не JSON, просто часть!)

Итак, для ваших тестов вы можетесоздавать тестовые данные простой конкатенацией частей, таких как

String ab_json = "{" + readAsText("a.json-part") + "," + readAsText("b.json-part") + "}";
String a_not_b_json = "{" + readAsText("a.json-part") + "}";

и т. д.

В этом случае вы можете комбинировать поля по своему усмотрению и быть уверенным, что не пропустили ни одного файлав случае изменения какого-либо поля.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...