Как протестировать весь конвейер API, подменив только платёжный шлюз
Нужно проверить POST /orders целиком: маршрутизацию, валидацию, авторизацию, сериализацию и запись в базу. Платёжный шлюз в тестах вызывать нельзя. Сейчас в тестах вызывают методы контроллера напрямую, и ошибки валидации и сериализации не ловятся.
Какой инструмент подходит?
- WebApplicationFactory с подменой шлюза в ConfigureTestServices
- Вызывать контроллер напрямую с моками всех зависимостей
- Разворачивать сервис на стенде и вызывать по сети
- Тестировать только методы сервисного слоя
