Яка різниця між плагінами Maven Surefire та Maven Failsafe?
Я шукав по всьому Інтернету, але не отримав відповіді.
Яка різниця між плагінами Maven Surefire та Maven Failsafe?
Я шукав по всьому Інтернету, але не отримав відповіді.
Відповіді:
Простими словами, плагін Failsafe призначений для запуску інтеграційних тестів, а Surefire - для запуску одиничних тестів .
Це далі пояснюється в Maven FAQ :
maven-surefire-plugin
призначений для запуску тестових одиниць, і якщо будь-який з тестів не вдасться, він може негайно збігти збірку.
maven-failsafe-plugin
призначений для запуску тестів інтеграції , і розв'язує помилку збірки, якщо є тестові збої від фактично запущених тестів.Назву " failsafe " було обрано і тому, що це синонім надійного вогню і тому, що це означає, що коли він не вдається, це робить це безпечним чином.
Відмовостійкими Плагін має дві мети:
failsafe:integration-test
запускає інтеграційні тести програми,failsafe:verify
перевіряє, чи пройшли інтеграційні тести програми.
Дивитися також:
З https://maven.apache.org/surefire/maven-failsafe-plugin/ , я б сказав, що різниця між Surefire та Failsafe полягає в тому, як вони провалюються:
Якщо ви використовуєте плагін Surefire для запуску тестів, тоді, коли у вас виникла тестова помилка, збірка зупиниться на фазі тесту інтеграції, і ваше тестове середовище інтеграції не буде зрушено належним чином.
Плагін Failsafe використовується під час тесту інтеграції та перевірки фаз життєвого циклу збірки для виконання інтеграційних тестів програми. Плагін Failsafe не вийде з ладу під час фази тестування інтеграції, тим самим дозволить виконати етап після інтеграції.
У моїй країні є другим результатом google під час пошуку "maven failsafe maven safefire", щоб дістатися до цього FAQ: Різниця між maven-failsafe-плагіном і maven-surefire-плагіном, де зазначено:
maven-surefire-плагін призначений для запуску тестів одиниць, і якщо будь-який з тестів не вдасться, він не зможе зібрати відразу.
maven-failsafe-плагін призначений для запуску тестів інтеграції, і від'єднує помилки збірки, якщо є тестові збої з фактично запущених тестів. "