В чем разница между плагинами Maven Surefire и Maven Failsafe?
Я искал по всему Интернету, но не получил ответа.
В чем разница между плагинами Maven Surefire и Maven Failsafe?
Я искал по всему Интернету, но не получил ответа.
Ответы:
Проще говоря, плагин Failsafe предназначен для выполнения интеграционных тестов, а Surefire - для выполнения модульных тестов .
Это дополнительно объясняется в FAQ по Maven :
maven-surefire-plugin
предназначен для запуска модульных тестов, и если какой-либо из тестов завершится неудачно, он немедленно завершит сборку.
maven-failsafe-plugin
предназначен для выполнения интеграционных тестов и отделяет сбой сборки при наличии сбоев теста от фактического запуска тестов.Название « отказоустойчивый » было выбрано как потому, что оно является синонимом « безотказности », так и потому, что оно подразумевает, что когда он терпит неудачу, он делает это безопасным способом.
Отказоустойчивыми Плагин имеет две цели:
failsafe:integration-test
выполняет интеграционные тесты приложения,failsafe:verify
проверяет, прошли ли интеграционные тесты приложения.
Смотрите также:
Из https://maven.apache.org/surefire/maven-failsafe-plugin/ я бы сказал, что разница между Surefire и Failsafe заключается в том, как они терпят неудачу:
Если вы используете подключаемый модуль Surefire для запуска тестов, то в случае сбоя теста сборка остановится на этапе интеграции-тестирования, и ваша среда тестирования интеграции не будет корректно разорвана.
Плагин Failsafe используется на этапах интеграционного тестирования и проверки жизненного цикла сборки для выполнения интеграционных тестов приложения. Плагин Failsafe не приведет к сбою сборки на этапе тестирования интеграции, тем самым позволяя выполнить этап тестирования после интеграции.
В моей стране это второй результат в Google при поиске «maven failsafe maven surefire», чтобы перейти к этому FAQ: разница между maven-failsafe-plugin и maven-surefire-plugin, в которой говорится:
maven-surefire-plugin предназначен для запуска модульных тестов, и если какой-либо из тестов завершится неудачно, он немедленно завершит сборку.
maven-failsafe-plugin предназначен для выполнения интеграционных тестов и отделяет неудачную сборку, если есть сбои теста, от фактического выполнения тестов ".