2017-01-26 17 views
6

Na mojej pipsie Jenkinsa uruchamiam testy jednostkowe zarówno w konfiguracjach debugowania, jak i wydania. Każda konfiguracja testu generuje osobny plik wyników XML JUnit. Nazwy testów w obu: konfiguracja debugowania i wydania są takie same. Obecnie używam następującą komendę junit aby pokazać wyniki badań:przy użyciu wielu plików wyników JUnit na rurociągu Jenkinsa

junit allowEmptyResults: true, healthScaleFactor: 0.0, keepLongStdio: true, testResults: 'Test-Dir/Artifacts/test_xml_reports_*/*.xml'

Problem polega na tym, że na Jenkins UI zarówno: Testy i debugowych Wyniki przedstawiono razem i nie ma możliwości, aby wiedzieć, jakie testy (z konfiguracji debugowania lub wydania) nie powiodło się. Czy można wyświetlić wyniki testów debugowania i wydania wersji osobno? Jeśli tak, jak mogę to zrobić?

+0

Czy kiedykolwiek znalazłeś rozwiązanie tego problemu? Uderzam w ten sam problem. – Sardathrion

+0

Zmodyfikowałem format XML i uwzględniłem nazwę wersji kompilacji (debug/release) jako nazwę pakietu, aby zapobiec temu problemowi – Dima

Odpowiedz

1

Nie wygląda na moje pytanie. Jako obejście zmieniono format raportu JUnit XML i uwzględniono nazwę wersji kompilacji (debug/release) jako nazwę pakietu.

0

Przeprowadzamy te same testy integracji w dwóch różnych konfiguracjach z różnymi typami DB. Używamy wtyczki maven i failsafe, więc korzystam z -Dsurefire.reportNameSuffix, więc widzę różnicę między tymi dwoma przebiegami.

Poniżej jest przykład bloku naszego Jenkinsfile:

stage('Integration test MySql') { 
    steps { 
     timeout(75) { 
      sh("mvn -e verify -DskipUnitTests=true -DtestConfigResource=conf/mysql-local.yaml " + 
       "-DintegrationForkCount=1 -DdbInitMode=migrations -Dmaven.test.failure.ignore=false " + 
       "-Dsurefire.reportNameSuffix=MYSQL) 
     } 
    } 
    post { 
     always { 
      junit '**/failsafe-reports/*MYSQL.xml' 
     } 
    } 
} 

W raporcie, testy integracyjne uruchamiane przeciwko mysql następnie pokazać się z MySQL załączonym do ich nazwy.