2016-10-13 2 views
0

Ich verwende Visual Studio Team Services, um einen automatisierten Build auszuführen und SonarQube zur Anzeige von Codequalität, Abdeckung usw. zu verwenden. Ich verwende auch einen privat gehosteten Build-Agent.VSTS SonarQube kann die TRX-Datei nicht finden

Die Build-Schritte arbeiten alle erfolgreich mit Daten verarbeitet und bis SonarQube bevölkert, die groß ist. In SonarQube wird jedoch keine Codeabdeckung angezeigt. Nachdem ich die Logs in VSTS durchgelesen hatte, fand ich heraus, dass SonarQube nach der .trx-Datei (die Codeabdeckung enthält) in einem anderen Verzeichnis als dem, in dem VSTS die .trx-Datei veröffentlicht, sucht.

Also, wenn VSTS baut die Lösung die Testergebnisdatei erstellt hier: C: \ agent_work \ 3 \ s \ Testresults

Aber Sonarqube versucht, von hier Testergebnisse zu verwenden: C: \ agent_work \ 3 \ TestResults

Wenn ich die .trx-Datei manuell auf den Build-Server an den richtigen Speicherort kopieren und dann den Build erneut ausführen, funktioniert die Codeüberdeckung alle ordnungsgemäß und verarbeitet zu SonarQube. Das Problem ist also definitiv das Missverhältnis zwischen den Orten, an denen die .trx veröffentlicht wird, und dem Ort, an dem sie abgerufen werden sollen.

Ich kann keinen Weg finden, den Veröffentlichungsort oder den Quellort der SonarQube zu ändern.

Bitte helfen!

+0

** PROBLEM **: Ich habe einen Schritt ** Copy Files To ** in meine VSTS Build-Definition zwischen dem ** Visual Studio Test ** und ** SonarQube für MSBuild - End Analysis ** hinzugefügt. In diesem Schritt werden nur die Dateien an den Speicherort kopiert, an dem der SonarQube-Schritt sie sucht. Also, in diesem Schritt Dateien kopieren, so einfach wie das Setzen von Source Folder = TestResults, Contents = **, TargetFolder = .. \ TestResults. Und vergiss nicht, Zielordner zu bereinigen. – Mike

Antwort

Verwandte Themen