2009-06-17 2 views
20

Ceci est lié à une autre question que j'ai posée à propos d'une tentative d'échec de Hudson sur un test de test d'unité unique. Lorsque j'exécute Maven sur mon build autonome, il échoue en raison d'erreurs de test unitaires (mvn clean install) mais quand je l'exécute dans Hudson, il indique qu'il y a eu une erreur due à l'échec du test, mais la compilation est toujours réussie (et marqué comme instable). Des pensées?La construction d'Hudson réussie avec des échecs de test unitaires

+0

il semble que ce soit une décision de Hudson mis dans la version 1.9.5 ou 1.9.6 –

Répondre

22

Quel type de travail Hudson avez-vous créé? Je pense que c'est le projet m2 plutôt que le projet freestyle. Dans le projet m2, Hudson modifiera la façon dont votre pom est configuré afin d'éviter les échecs et de le marquer comme instable. C'était intentionnel.

Essayez de définir maven.test.failure.ignore=false dans le paramètre Avancé car je crois que Hudson définit automatiquement cette valeur sur true.

+0

merci beaucoup. travaillé parfaitement. –

+0

ha! Je viens de découvrir ce comportement aujourd'hui. Une ride: Hudson réussira à construire mon projet avec des tests unitaires défaillants, mais échoue silencieusement à construire des projets qui en dépendent. (J'ai sélectionné pour les projets en aval à reconstruire automatiquement lorsque les dépendances de snapshot sont construites.Cependant, dans ce cas, cela ne se produit pas.Cela causait des rayures de tête considérable aujourd'hui.) – bendin

6

La convention de Hudson est qu'il ne cherchera des tests que si la compilation a réussi. Si la construction échoue, hudson interprète cela comme signifiant qu'il y a eu une erreur irrécupérable qui a empêché la construction de fonctionner, et non pas que certains tests ont échoué. C'est un différentiel assez utile, donc unstable (jaune) signifie que la construction est terminée et que les tests ont tous pu être exécutés, mais que certains ont échoué.

Et erreur signifie que la construction a échoué dans ce qu'il ne pouvait pas compiler ou qu'il y avait une autre erreur irrécupérable qui a causé les essais pas à courir, dans ce hudson cas ne sera pas un rapport sur le test unitaire Etat.

0

il y a aussi des options hudson dans la configuration de chaque tâche afin de déterminer comment agir si une accumulation devient instable, comme si oui ou non envoyer des emails, etc.

-1

juste vu ce défaut est signalé sur the Hudson Bugtracker

+0

Le lien est cassé. Envoyez-moi un commentaire s'il vous plaît si vous l'avez réparé. – palacsint

Questions connexes