Объяснение
Контракт проверяет согласованность сторон API. Integration-тест проверяет реальную сериализацию, хранилище и ошибки. Mock должен моделировать контракт, а не выдуманное удобное поведение.
Задача для самостоятельного решения
Что проверять кроме статуса 200?
Показать разбор ответа
Схему, смысл полей, права, побочные эффекты и неверные входы. Успешный HTTP-статус может сопровождать неправильный результат.