So ändern Sie den Wert der Namensspalte im Cobertura-Bericht

8

Ich verwende Cobertura-Plugin in Jenkins für die Codeabdeckung. Ich möchte den Wert der Namensspalte in der Projektübersichtszusammenfassung für jeden Bericht ändern.

Gibt es eine Möglichkeit, dies zu ändern? Ich möchte meinen Projektnamen dort drüben geben.

    
Prithvipal Singh 21.03.2014, 10:09
quelle

4 Antworten

4

Hier ist eine Verzweigung des Plugins, die das tut, was Sie fragen (Projektname anstelle von "Covertura-Bericht").

Zypern

Im Moment wird nur der Projektname verwendet. Ich nehme an, das könnte zu einem konfigurierbaren Element werden? Ich werde froh sein, daran mehr zu arbeiten, wenn etwas anderes benötigt wird, und könnte die Änderungen wahrscheinlich sogar in einer Weise verpacken, die sie stromaufwärts bringen wird.

Der relevante Code, der geändert wurde, war in CoverageResult.java. Eine Methode hinzugefügt:

%Vor%

Und in der index.jelly wurde der Verweis von it.name auf it.getJobName () geändert.

%Vor%

Es wird ein bisschen schwieriger sein, es pro Bericht zu machen. Der Bericht selbst hat keinen Namen oder Titelfeld - und dieses Plugin kontrolliert nicht das Format, es liest es einfach.

Ich benutze das auch mit einem Javascript-Projekt, das Karma und Karma-Abdeckung verwendet. Derzeit läuft das gegabelte Plugin in der Produktion jenkins.

BEARBEITEN: In der Verzweigung use-filename-for-reportname in meinem Repository finden Sie eine Version des Plugins, die den Namen der Coverage-Datei als Berichtsname verwendet.

    
aet 06.05.2014 20:55
quelle
2

Ich empfehle, zur Plugin-Seite zu gehen und einen der Betreuer zu kontaktieren:
Stephen Connolly (id: stephenconnolly)
Manuel Carrasco Monino (id: manuel_carrasco) Seiji Sogabe (id: ssogabe)

Und Sie fragen, wie Sie es tun können.
Sobald Sie die Lösung haben, teilen Sie sie hier, weil andere (wie ich) auch diese Fähigkeit wollen ...

Ich hoffe, das hilft.

    
Eldad AK 30.04.2014 07:31
quelle
2

Sie können zur Plugin-Github-Seite gehen und eine Kopie der Quelle klonen Code für dich selbst.

Eine schnelle Suche zeigt, dass sich die Zeile, die Sie ändern möchten, wahrscheinlich in dieser Datei befindet:
src/main/resources/hudson/plugins/cobertura/Messages.properties

CoberturaCoverageParser.name=Cobertura Coverage Report

Ändern Sie diese Zeile zu dem, was Sie möchten. Speichern und erstellen Sie das Plugin neu. Es gibt ein großes Tutorial zum Erstellen von Jenkins-Plugins hier .

    
Slav 30.04.2014 14:49
quelle
0

Nun, ich habe Cobertura nur einmal in Maven verwendet und dort können Sie zwischen einer XML- und HTML-Ausgabe wählen, die im outputDirectory erstellt wird, das Sie in der Datei pom.xml Ihres Projekts definieren.

Angenommen, die Logik ist dieselbe, könnten Sie zu den generierten xml- oder html-Dateien gehen und einfach nach der Zeichenfolge "Cobertura Coverage Report" suchen und diese dort ändern.

Dies funktioniert, wenn Sie das Ziel haben, es an jemanden zu senden (zum Beispiel: einen Bericht an Ihren Chef).

Soweit ich sehe, ist es momentan nicht möglich, einige Konfigurationen zu ändern und eine bestimmte Lösung zu haben.

Was ich vorschlagen würde, ist ein Problem auf der Plugin-Seite oder sogar im OpenSource Repository öffnen bei GitHub und schlagen Sie die Verbesserung vor oder tragen Sie sich selbst bei.

Wenn sie dadurch nicht in Bewegung geraten, würde ich vorschlagen, die Betreuer auf der Plugin-Seite zu kontaktieren .

Bearbeiten (30-04-2014):

Die von Ihnen gesuchte Lösung ist nicht verfügbar, Cobertura unterstützt sie nicht. Das Cobertura-Plugin zeigt immer die gleiche Berichtsstruktur an, wobei die gesamte Berichtszusammenfassung immer den Wert "cobertura coverage report" hat, das Emma-Coverage-Plugin, das sehr ähnlich ist, hat an dieser Stelle den String-Wert "all packages", außer Sie bearbeiten der Quellcode oder bitten um eine Erweiterung, sorry.

Wenn Sie sich entscheiden, den Quellcode zu ändern, ist es in der Tat der von Slav vorgeschlagene Wert:

src/main/resources/hudson/plugins/cobertura/Messages.properties

CoberturaCoverageParser.name=Cobertura Coverage Report

Aber in diesem Fall müssten Sie für jedes Projekt ein neues Plugin erstellen und installieren.

Unter dem Strich würde ich also nicht in diese Richtung gehen. Auf der anderen Seite, was ich vorschlagen würde, ist die Verwendung von Cobertura oder Karma (in Daniel Schaffer Fall), um stattdessen HTML zu generieren. Dieser kann leicht mit grundlegenden HTML und CSS-Fähigkeiten geändert werden, um Ihr gewünschtes Aussehen und Gefühl zu haben.

    
CMPSoares 30.04.2014 16:32
quelle

Tags und Links