Тестовые данные: работа с внешними файлами ресурсов - PullRequest
0 голосов
/ 28 июня 2011

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

В рамках моего подхода к тестированию я создал несколько файлов ресурсов:

sample_ActionValueAssignedValid.json
sample_ActionValueMissing.json
sample_ActionValueInvalid.json
sample_ActionValueAssignedWhiteSpace.json

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

В какой-то момент пришел клиент и попросил изменить структуру данных, чтобы включить некоторые данные и удалить что-то еще. Прекрасный.

Теперь я придумаю новый совершенный файл sample.json, в котором есть все. Но что делать со всеми остальными файлами ресурсов, для которых тесты уже написаны? Я полагаю, что могу обновить их один за другим ... но я не могу не задаться вопросом ... должен быть лучший способ?

Пожалуйста, дайте мне знать, как бы вы подошли к такой ситуации?

1 Ответ

1 голос
/ 29 июня 2011

В аналогичной ситуации, с которой мне пришлось столкнуться, я создал правильный и полный вход в качестве базы. Затем для каждого теста я программно «ломал» его, чтобы протестировать каждый сценарий. Таким образом, вам нужно только один раз обновить основную структуру, если она меняется, и обновлять тесты только там, где изменения имеют смысл.

...