При написании тестов для интерфейсов запрос-ответ должны быть написаны тестовые случаи, чтобы каждый случай проверял наименьшую значимую часть запроса, где это возможно. То есть каждый тестовый случай должен одновременно проверять один значимый элемент запроса.
Если вы следуете этому шаблону, вы сможете определить каждый тестовый случай как один из следующих:
Корпус для сердечника
Случай, который определяет «базу», из которой построены другие тесты. Это всегда успешные случаи, которые представляют успешный запрос. Вы можете определить основной запрос в своих классах модульных тестов или, если у вас есть несколько основных вариантов, построить основные варианты из общей базы. В любом случае, в этих случаях вы выполняете большую часть «настройки» значений.
Случаи отклонения
Случай, созданный на основе базового теста, путем изменения одного из фрагментов информации для тестирования другого варианта использования. Обычно это ваши крайние случаи и обычно тестирование на ожидаемые сбои (то есть вызывающий абонент передает неверную информацию).
По сути, это сводится к DRY , так как ваши основные случаи определяют вещи, которые являются "общими" в ваших тестовых случаях, поэтому вы не тратите 200 строк на настройку значений. Большинство входных данных тестового примера должны быть выражены как «То же самое, что и <тестовый пример> , но с », поэтому вы должны написать их как таковые.