2016-01-26 16 views
8

Ich habe einen Jenkins-Job, um einige Testberichte (XML) nach lokal zu kopieren und sie über xUnit in JUnit-Berichte umzuwandeln.Jenkins xUnit-Testergebnisbericht

Das Problem ist, dass es keine Tests nicht bestanden oder ausgelassen, aber ich habe immer

[xUnit] [INFO] - Check 'Failed Tests' threshold. 
    [xUnit] [INFO] - Check 'Skipped Tests' threshold. 
    [xUnit] [INFO] - Setting the build status to FAILURE 
    [xUnit] [INFO] - Stopping recording. 
    Finished: FAILURE 

Was verursacht diese bekommen?

+0

Gibt es irgendwelche Testergebnisse? Der xUnit-Herausgeber kann so konfiguriert werden, dass er fehlschlägt, wenn keine Ergebnisse vorliegen. Ist das die einzige xUnit-Ausgabe in deinem Build? Wie lautet die Build-Konfiguration? Welche Version des xUnit-Plugins haben Sie? –

+0

@Dave Bacher Dies ist der seltsame Teil. Ich habe Testergebnisse und es ist ziemlich große Reihe von Dateien. Nachdem ich diese XML-Berichte erhalten habe, versuche ich sie mit xUnit zu veröffentlichen. Dieser Jenkins-Job funktioniert schon vorher korrekt, aber er hat nur so gestarrt, dass er in letzter Zeit nicht funktioniert. Ich habe keine Ahnung, was passiert ist. –

+2

Ich hatte das gleiche Problem, ich habe die Ausführung meiner Komponententests (und die Erstellung der XML-Ergebnisdateien) über ein Bash-Skript ausgelöst, das Skript gab '1' zurück und ** dies ** verursachte das Fehlschlagen des Builds , die Zeile '[xUnit] [INFO] - Setzen des Build-Status auf FAILURE' war irreführend, da das Build nicht auf Fehler gesetzt wurde, der Build wurde ** bereits ** durch den Rückgabecode meines Skripts auf Fehler gesetzt. Ich glaube, es spiegelt einfach den aktuellen Stand des Builds wider. – Troyseph

Antwort

0

Bei meinem vorherigen Projekt hatte ich 3 Entwicklungsteams mit 4 Lösungen, die zusammen eine integrierte Plattform alle auf einem Jenkins Master bestanden.

Ich hatte 2 DOS Batch-Dateien, die in einem JenkinsScripts/Unterverzeichnis im Stamm jeder Lösung gehalten wurden. Eines wurde CodeCoverage.bat genannt (das sicherstellte, dass OpenCover und ReportGenerator die Unit-Tests beobachteten), die ihrerseits die RunUnitTests.bat-Parameter angaben.

packages\xunit.runner.console.2.1.0\tools\xunit.console.exe <MyUnitTestProject.dll> -nologo -noshadow -nunit TestReports\TestResults.xml 

Daher ich XUnit Ergebnis XML zu NUnit Ergebnis XML und mit dem NUnit Plugin um die Ergebnisse zu veröffentlichen, wurde die Umwandlung:

In RunUnitTests.bat die Schlüssel Linie mit vielen Parametern aufgelöst.

Seit ich diesen Ansatz verwendet habe, haben sich die Optionen für die Zuordnung von XUnit und NUnit 3 XML zu Jenkins freundlichen JUnit (auf mein Geheiß wohlgemerkt) verbessert.