RestAssured vs Mockmvc для модульного и интеграционного тестирования
Меня просят выбрать одного и лучшего из этих двух для модульных и интеграционных тестов.
1. RestAssured
2. Mockmvc
Приложение находится в Spring и Spring Boot. Я прочитал много блогов, и никаких различий не дано, или я не смог их найти. Для уверенности, его аккуратный и чистый код и стиль BDD делают его более читабельным. Но не звучит убедительно. Некоторые тесты написаны с использованием Mockmvc, и я пытаюсь написать то же самое в RestAssured для сравнения.
Я знаю, что это может звучать теоретически, но я не могу получить очки в пользу одного и предположить, какой из них лучше и почему. Похоже, выбор вкуса для меня. Есть мнения и предложения?
0 ответов
Вы бы выбрали MockMvc для тестирования веб-слоя. Эти тесты позволят вам проверить, правильно ли ваши классы контроллеров обрабатывают соответствующие HTTP-запросы. Поскольку это практически детализированные модульные тесты контроллера, вы можете дополнительно включить их в процент покрытия кода ваших приложений с помощью таких инструментов, как JaCoCo. Кстати, эти тесты, скорее всего, будут работать быстрее, чем интеграционные, поскольку для них не потребуется веб-сервер.
RestAssured используется для тестирования интеграции в вашем приложении Spring Boot. Когда дело доходит до тестирования и проверки интеграции API на основе RESTful, RestAssured предлагает удобные методы для создания и выполнения ваших HTTP-вызовов с настраиваемыми заголовками, аутентификацией, типами содержимого, параметрами запроса, содержимым полезной нагрузки, файлами cookie и т. Д.
Чтобы облегчить сравнение, ознакомьтесь с этой статьей - Тестирование API RESTful Spring Boot с использованием MockMvc/Mockito, Test RestTemplate и RestAssured - в ней есть хорошее объяснение и надежные примеры использования RestAssured и MockMvc.