2017-05-24 1 views
1

Ich bin neu bei Jenkins und versuche CI für meine iOS App einzurichten. Ich habe ein Komponententestziel im Projekt erstellt und Jenkins so konfiguriert, dass meine Komponententests korrekt erstellt und ausgeführt werden. Der Build schlägt jedoch fehl, wenn versucht wird, die Restergebnis-XML-Datei auszugeben, und ich bin mir nicht sicher, was ich falsch mache . Ich lieh ich eine Menge Ideen aus diesen Quellen dargestellt:Xcode 8 Jenkins JUnit Fehler: Testbericht keine Berichtsdateien gefunden

https://www.raywenderlich.com/22816/beginning-automated-testing-with-xcode-part-22 http://www.sailmaker.co.uk/blog/2013/04/02/advanced-jenkins-for-ios-and-mac/

Mein aktuelles Konsolenprotokoll nach einem Build wie folgt aussieht:

=== BUILD TARGET run_to_it OF PROJECT run_to_it WITH CONFIGURATION Debug === 

Check dependencies 

=== BUILD TARGET run_to_itTests OF PROJECT run_to_it WITH CONFIGURATION Debug === 

Check dependencies 

** BUILD SUCCEEDED ** 

Recording test results 
ERROR: Step ‘Publish JUnit test result report’ failed: No test report files were found. Configuration error? 
Finished: FAILURE 

Mein Build-Schritt ausführen Shell wie folgt aussieht:

Mein Post-Build-Schritt für, wo die Testberichte platziert werden sollen, sieht so aus: enter image description here

Ich habe sichergestellt ich die notwendigen Plugins und installiert habe als das ocunit2junit Juwel im /usr/local/bin Verzeichnis sowie zu haben installiert, um die JUnit-Plugin in Jenkins installieren.

enter image description hereenter image description here

Ich bin nicht 100% sicher, wenn eine XML-Datei überhaupt erzeugt wird, als ich durch jeden Ordner im Arbeitsbereich Jenkins habe gesucht und keine solche XML-Datei überall sehen. Ich bin mir nicht sicher, ob ich explizit angeben muss, dass diese Datei in einem der Build-Schritte erstellt wird oder ob sie standardmäßig behandelt wird. Ich habe im Internet weit und breit gesucht und konnte das Problem nicht schlüssig lösen.

Für den Kontext: Mein Jenkins Server läuft gerade auf meinem Mac. Ich habe einen Jenkins-Benutzer mit einem Arbeitsbereich auf meinem lokalen Computer. Ich laufe auch macOS Sierra und ich bin mir nicht sicher, ob es irgendwelche Erlaubnisprobleme mit dem Testberichte Ordner geben könnte. Ich sehe, dass der Ordner erstellt wird, aber keine xml-Datei jemals darin platziert wird.

Wenn ich die Publish JUnit test report result entfernen, wird mein Projekt erfolgreich erstellt.

Antwort

0

Wert auf Testbericht XML-Feld (Publish JUnit Testergebnis Bericht Option) scheint korrekt zu sein. Wenn Sie nach dem Build keine XML-Datei in diesem Verzeichnis haben, befindet sich das Problem in Ihrem Test (und der Generierung der XML-Junit-Ergebnisdatei), nicht in der JUnit-Testbericht-Berichtkonfiguration.

Können Sie sicher sein, dass Ihr Komponententest Ergebnis in einer XML-Datei mit dem Junit-Format generiert?

+0

Ja, ich vermute, dass, um das Problem auch zu sein, gibt es keine solche XML-Datei überall, die ich finden kann. Ich habe den Arbeitsbereich des Projekts im jenkins-Verzeichnis durchforstet und keine resultierenden XML-Dateien gefunden. Können Sie weiter ausführen, was Sie unter den Problemen verstehen? – zic10

+0

Wenn Sie den Junit-Testergebnisbericht veröffentlichen möchten, muss Ihr Komponententest das Ergebnis in einer XML-Datei mit Junit-Format generieren. Ist es der Fall? Wie haben Sie Ihren Gerätetest gemacht? Was ist der Ausgang Ihres Komponententests? –

+0

Mein Komponententest ist ein separates Testziel, das einen Einheitentest im Code ausführt. Ich habe nichts anderes darüber hinaus konfiguriert. – zic10

Verwandte Themen