2013-03-19 6 views
12

Ich habe gerade die Unit-Tests und die Integrationstests getrennt. Ich wollte die Coverage-Ergebnisse von UT und von IT trennen.Failsafe-Tests Ergebnisse in Sonar

Ich folgte this tutorial und es funktioniert (Danke @JohnDobie).

sonar coverage test results

Sonar zeigt die separaten Code-Coverage-Ergebnisse und den Unit-Test-Erfolg (oben rechts). Aber wie kann ich den Integrationstest Erfolg in Sonar bekommen?

+0

Sollte wahrscheinlich auf/zu Super-User migriert gefragt werden, nicht wahr? – TheBlastOne

+0

@TheBlastOne Ich weiß es nicht, es gibt kein Sonar-Tag auf Superuser. – gontard

+4

@TheBlastOne Ich stimme nicht zu, Sonar-Fragen beziehen sich normalerweise auf die Programmierung. Ich bezweifle, dass die Leute bei Superuser Fragen im Zusammenhang mit Unit-Tests und Maven-Konfiguration beantworten können. – Sylar

Antwort

10

Warten auf eine Implementierung im Sonar der IT-Ausführungsergebnisse (siehe @Fabriceanswer). Ich habe einen Workaround in this tutorial gefunden. Die Idee ist:

... fool Sonar to show test success for both unit and integration tests together by instructing Failsafe to store its test reports to the same directory as Surefire instead of the default failsafe-reports.

<plugin> 
    <groupId>org.apache.maven.plugins</groupId> 
    <artifactId>maven-failsafe-plugin</artifactId> 
    <configuration> 
     <reportsDirectory>${project.build.directory}/surefire-reports</reportsDirectory> 
    </configuration> 
</plugin> 

Das Ergebnis ist nicht perfekt, weil alle Tests in der Unit-Test-Widget angezeigt Ergebnis. Aber ich möchte wirklich nicht die IT-Testergebnisse auf dem ci-Server überprüfen. Ich möchte ein All-in-One-Dashboard für mein Projekt.

enter image description here

2

IT-Ausführungsergebnisse werden in Sonar nicht verschoben oder angezeigt.

Dies ist etwas, was wir in der Zukunft hinzufügen können, aber wir haben uns zuerst auf die Berichterstattung konzentriert, da dies die wichtigste ist. (Ausführungsergebnisse werden normalerweise über CI-Software auf CI-Servern überwacht.)

+10

Es ist schade, den ci-Server überprüfen zu müssen, da das Sonar ein "Alles in einem" Werkzeug ist. – gontard

+2

I 100% stimmen mit @gontard überein. – diegomtassis

+1

Nun, Testausführungsergebnisse sind in SonarQube wirklich nutzlos, weil Sie immer 100% Erfolg haben sollten (und so 0 Fehler und 0 Fehler) => Wenn Sie eine SonarQube Analyse ausführen, während Ihr Projekt Regressionen hat, fehlt Ihnen wirklich der Sinn kontinuierliche Integration. –