Ich baue eine Qt GUI-Anwendung über Jenkins. Ich habe 3 Build Schritte:Jenkins Build Script beendet nach Google Testausführung
- Aufbau der Test ausführbaren
- den Test ausführbare Lauf
- eine Abdeckung Bericht mit gcovr
Aus irgendeinem Grund Kompilieren der Shell Aufgabe für die Durchführung des Tests ausführbar stoppt nach der Ausführung. Selbst eine einfache echo
läuft nicht nach. Die Tests werden mit Google Test geschrieben und xUnit XML-Dateien ausgegeben, die nach dem Build analysiert werden. Einige Tests starten die Benutzeroberfläche der Anwendung, also habe ich das jenkins xvnc-Plugin installiert, damit sie ausgeführt werden können.
Die Build-Aufgaben sind wie folgt:
Bauen
cd $WORKSPACE/projectfiles/QMake
sh createbin.sh
-Test
cd $WORKSPACE/bin
./Application --gtest_output=xml
Deckungsbericht
cd $WORKSPACE/projectfiles/QMake/out
gcovr -x -o coverage.xml
Nun wird eine echo
am Ende der ersten Build-Aufgabe korrekt gedruckt, aber eine echo
am Ende der zweiten ist nicht korrekt. Die dritte Build-Task wird daher nicht einmal ausgeführt, obwohl die Google Test-Ausgabe sichtbar ist. Ich dachte, dass das Problem vielleicht darin besteht, dass einige Google Tests fehlschlagen, aber warum sollte das Skript nicht ausgeführt werden, nur weil die Tests fehlschlagen?
Vielleicht kann mir jemand einen Hinweis geben, warum die zweite Aufgabe aufhört.
bearbeiten
Die Konsolenausgabe sieht wie folgt aus:
Updating svn://repo/ to revision '2012-11-15T06:43:15.228 -0800'
At revision 2053
no change for svn://repo/ since the previous build
Starting xvnc
[VG5] $ vncserver :10
New 'ubuntu:10 (jenkins)' desktop is ubuntu:10
Starting applications specified in /var/lib/jenkins/.vnc/xstartup
Log file is /var/lib/jenkins/.vnc/ubuntu:10.log
[VG5] $ /bin/sh -xe /tmp/hudson7777833632767565513.sh
+ cd /var/lib/jenkins/workspace/projectfiles/QMake
+ sh createbin.sh
... Compiler output ...
+ echo Build Done
Build Done
[VG5] $ /bin/sh -xe /tmp/hudson4729703161621217344.sh
+ cd /var/lib/jenkins/workspace/VG5/bin
+ ./Application --gtest_output=xml
Xlib: extension "XInputExtension" missing on display ":10".
[==========] Running 29 tests from 8 test cases.
... Test output ...
3 FAILED TESTS
Build step 'Execute shell' marked build as failure
Terminating xvnc.
$ vncserver -kill :10
Killing Xvnc4 process ID 1953
Recording test results
Skipping Cobertura coverage report as build was not UNSTABLE or better ...
Finished: FAILURE
Ausgezeichnete Antwort, ich dachte wirklich nicht über die Möglichkeit, dass jeder der möglichen Befehle das Skript stoppen könnte. Vielen Dank! – dasmaze
Ich wünschte, ich könnte Sie 10 mal auffrischen. Thks viel dafür !!! – nolazybits
@zeflasher, du könntest mir immer ein Kopfgeld für die Antwort zuweisen;) – Slav