Вы должны помнить о ведении таких тестов.После написания нескольких тестов веб-сервисов с поддержкой тестов Spring-WS я должен признать, что хранение запросов (настройка теста) и ожидаемых ответов во внешних XML-файлах было не очень хорошей идеей.Каждая пара запрос-ответ имеет тот же префикс имени, что и тестовый пример, поэтому все было автоматизировано и очень чисто.Но все же рефакторинг и диагностика ошибок теста становятся болезненными.Через некоторое время я понял, что встраивание XML в тестовый пример в виде String, хотя и некрасиво, гораздо проще в обслуживании.
В вашем случае я предполагаю, что вы вызываете какой-то запрос к базе данных и получаете ответный список карт.А как насчет написания какого-нибудь симпатичного DSL, чтобы сделать утверждения об этих структурах?На самом деле, FEST-Assert вполне подходит для этого.
Допустим, вы тестируете следующий запрос (я знаю, что это упрощение):
List<Map<String, Object>> rs = db.query("SELECT id, name FROM Users");
, тогда вы можетепросто напишите:
assertThat(rs).hasSize(1);
assertThat(rs.get(0))
.hasSize(2)
.includes(
entry("id", 7),
entry("name", "John")
)
);
Конечно, это можно и нужно еще больше упростить, чтобы лучше соответствовать вашим потребностям.Не проще ли иметь полный тестовый сценарий на одном экране, а не переходить от одного файла к другому?
Или, может быть, вам стоит попробовать Fitnesse (похоже, вы больше не выполняете юниттестирование, поэтому должна быть приемлема среда приемочного тестирования), где тесты хранятся в вики-подобных документах, включая таблицы?