2017-10-11 1 views
1

Nous avons 11 @tests que nous appelons un pack de test et chaque pack de test est rempli avec environ 15-20 tests individuels. Nous avons ensuite divisé le @tests en 2 lots.Force jenkins à retourner la construction stable?

Le lot 1 est le pack de test 1 -6 et le lot 2 de 7 à 11. Nous construisons ces tests sur jenkins chaque nuit en même temps. Lot 1 99% du temps est stable.

Batch 2 99% du temps retourne instable même si la génération a réussi. Nous avons un @test après le test pack 11 qui crée un rapport avec des tests échoués. Maintenant que jenkins renvoie une construction comme instable, le @test generateReport ne "ferme" pas le rapport mais les octets indiquent 0kb, ce qui signifie qu'il ne s'est jamais fermé.

Existe-t-il un moyen de forcer jenkins à revenir à l'état stable? Utilisation de Java et de sélénium

Répondre

0

Si vous utilisez des travaux de pipeline et des fichiers Jenkins pour votre processus de génération, vous pouvez définir manuellement le résultat de la génération. La variable currentBuild est disponible dans n'importe quel fichier Jenkins. Ce qui suit est non testé, mais devrait vous donner une idée générale

node { 
    stages{ 
     stage('Test') { 
      script { 
       try { 
        # Run tests here 
       } catch (e) { 
        # Determine if e indicates the expected test failures or something else 
        currentBuild.result = 'SUCCESS' 
       } 
      } 
     } 
    } 
} 

Notez que la marque doit au-dessus du stade de succesful Test; le reste de la construction continuerait comme d'habitude