2017-07-27 2 views
0

Je cours tous les unittest.dll en utilisant NUnitConsole3 test coureur et il génère xml Rapport TestResult après la construction réussie.Comment vais-je faire la construction échouer si l'un des tests unitaires échoue?Comment échouer Construire sur NUnitTest échouer en utilisant Powershell

Ci-dessous est le script pour exécuter les tests unitaires

$SourceDir = "C:\Users\M1036083\Source\Repos\TestSitecoreProject" 


$OutDir = "C:\Builds\2\Demo\bin" 



## ------------------------------------------------------------------------------ 
## Set Nunit Tool path 
## ------------------------------------------------------------------------------ 

$nunit = "$SourceDir\NUnit.Console-3.6.1\nunit3-console.exe" 


## ------------------------------------------------------------------------------ 
## Get all the Test dlls from the output directory 
## ------------------------------------------------------------------------------ 

$tests = (Get-ChildItem $OutDir -Recurse -Include Demo.*Tests.dll) 


## ------------------------------------------------------------------------------ 
## Run all the tests and generate report in XML format 
## ------------------------------------------------------------------------------ 

& $nunit --inprocess $tests --noheader --work="$OutDir" 

Répondre

0

Vous pouvez utiliser un contrôle sur le code de sortie de coureur console, car il retourne le nombre total d'échecs (la somme de échoué, invalide ou a entraîné une erreur tests, le code est here).
Pour obtenir le code de sortie dans PowerShell, utilisez simplement $LASTEXITCODE (puisque vous exécutez nunit in-process, plus de détails here).
Expect les codes de retour suivants de coureur de la console:

  • 0 - Tous les tests passés
  • Au-dessus de 0 - Nombre de défaillances
  • En dessous de 0 - Erreur dans le coureur de la console: Assemblée non valide (-1), Argument (-2) ou Fixture (-4) ou erreur inattendue (-100)