Prévenir les tests unitaires en maven mais permettre des tests d'intégration



Answers

Une solution de contournement serait d'appeler:

mvn clean test-compile failsafe:integration-test

Certes, c'est moche, mais cela peut résoudre votre problème.

Ou (un autre hack):

mvn clean integration-test -Dtest=SomePatternThatDoesntMatchAnything -DfailIfNoTests=false

Référence:

Question

J'ai un build maven dans lequel j'utilise le plugin SureFire pour lancer des tests unitaires, et le plugin FailSafe pour lancer des tests d'intégration. Je voudrais un moyen d'exécuter seulement les tests du plugin FailSafe.

Ce n'est pas une bonne solution pour moi d'ajouter des profils différents ou quelque chose dans le pom, parce que c'est une construction multimodule et je ne veux pas avoir à éditer le pom de chaque module.

Il y a skip.tests et maven.test.skip et skipTests qui arrêtent tous les tests, et skipITs , qui n'arrête que le plugin failsafe.

Donc, y a-t-il un drapeau de ligne de commande pour skipITs comme skipITs , mais avec la fonctionnalité de "onlyITs"?




J'espère que cela t'aides!

Essayez d'exécuter le test uniquement avec FailSafe (plugin pour integration-test - il vous permettra d'exécuter uniquement des tests d'intégration avec ce type de nommage, par défaut: * / IT .java, ** / IT.java, * /*ITCase.java ;, mais vous pouvez facilement changer cela à partir du fichier pom)

mvn failsafe:integration-test

Et quand vous voulez utiliser seulement SureFire (plugin pour tester les unités)

mvn surefire:test

ou un test à la fois avec:

mvn -Dtest=MyUnitlTest



Essayez d'exécuter vos tests d'intégration ou unitaires dans un profil distinct. Ensuite, vous pouvez simplement activer / désactiver le profil.




Links