2013-05-01 17 views
13

Ich versuche dotCover mit meinen NUnit-Tests zu starten, in der TeamCity 8 als Build-Schritt. Aber nein metter, was ich versuche ich immer die gleichen Fehler in der Log-Datei erhalten:DotCover in TeamCity 8 funktioniert nicht

Schritt 4/4: Coverage (NUnit) (1 s)
[Schritt 4/4] Beginn: C: \ Teamcity \ buildAgent \ Plugins \ dotnetPlugin \ bin \ JetBrains.BuildServer.NUnitLauncher.exe #TeamCityImplicit
[Schritt 4/4] im Verzeichnis: C: \ Teamcity \ buildAgent \ work \ 6aee0f0d2626793d
[Schritt 4/4] ## Teamcity [ importData type = 'dotNetCoverage' tool = 'dotcover' datei = 'C: \ TeamCity \ buildAgent \ temp \ buildTmp \ coverage_dotcover3226256377023598081.data']
[Schritt 4/4] Daten von 'C: \ TeamCity \ buildAgent \ temp \ buildTmp \ coverage_dotcover3226256377023598081.data ' mit 'dotNetCoverage'
[Schritt 4/4] Abgelehnte Berichtsdatei: C: \ TeamCity \ Buildagent \ temp \ buildTmp \ coverage_dotcover3226256377023598081.data size: 0. Die Datei ist leer oder existiert nicht
[Schritt 4/4 ] Verfahren mit Code -2146232576
[Schritt 4/4] Stufenabdeckung (NUnit) verlassen fehlgeschlagen

habe ich versucht, in Teamcity dotCover zu verwenden sowohl die aufgenommen werden und der gesondert eine installiert, aber beide sind andernfalls mit der gleiche Fehler.

Meine Konfiguration:

NUnit tests + coverage configuration

Wenn ich kein Coverage Tool wählen, die Tests auf einer eigenen funktionieren. Aber mit dotCover ausgewählt bekomme ich immer den gleichen Fehler.

Jede Hilfe hier würde sehr geschätzt werden.

+0

Nur um zu klären, ist meine TeamCity-Version TeamCity Enterprise 8.0 EAP (Build 27147), und ja, ich habe diese Seite gesehen: http://youtrack.jetbrains.com/issue/TW-25856 aber es heißt der Status ist behoben . – domderen

+1

Könnten Sie uns bitte die Protokolldatei von dotCover schicken (an [email protected] oder http://youtrack.jetbrains.com/issues/DCVR)? Um dies zu tun, führen Sie bitte die folgenden Schritte durch: - fügen Sie den Konfigurationsparameter "teamcity.agent.dotCover.log" mit dem Wert "% system.teamcity.build.tempDir%/dotCoverLogs" hinzu - run build - gehen Sie zum Erstellen von Artefakten , wählen Sie "versteckte Artefakte anzeigen" und finden Sie .teamcity/.NETCoverage/dotCoverLogs.zip –

+0

Sind Sie sicher, dass Ihre Tests ausgeführt werden? – Martin

Antwort

6

Check out: http://confluence.jetbrains.com/pages/viewpage.action?pageId=49448495

Im Falle der internen Teamcity dotCover, haben Sie die „alle Anwendungspakete“ lesen Zugriffsrechte auf die Teamcity Installationsordner hinzuzufügen. Wenn Sie einen externen DotCover verwenden, fügen Sie dort die Rechte hinzu.

Dies korrigiert das Problem für mich, für jetzt.

+0

Beachten Sie, dass dies für den binären Installationsordner von TeamCity gilt, falls Sie 'Program Files (x86)' nicht verwenden. –

+1

@ByronRoss Woher wissen wir, welcher Ordner der mit TeamCity ist? Ich habe nur einen, der so heißt, aber er befindet sich in der Wurzel (d. H. * C: \ teamcity *). Und ich habe den Benutzer * SYSTEM * alle möglichen Dinge tun lassen (habe nichts gefunden, was * ALLE ANWENDUNGSPAKETE * genannt wurde, nämlich - lesen, schreiben und den Rest der Sachen. Vergeblich. Was kann noch getan werden? –

2

Es ist wahrscheinlich, weil Sie dies auf Build-Agent ohne .NET 3.5 ausführen (aber mit 4.0). Es ist einfach zu überprüfen, weil Sie eine Ausnahme erhalten, nachdem Sie dotCover.exe auf diesem Agenten ausgeführt haben. Installieren Sie .NET 3.5 (verwenden Sie den Server-Manager für das neueste Windows).

Die nächste Sache ist, dass es einen weiteren Fehler mit dotCover in TeamCity 8 gibt. Sie müssen die Testversion von dotCover verwenden, bis sie es reparieren (und den Pfad zu installiertem dotCover in die Build-Schritt-Konfiguration einfügen).

Es löste das Problem in meinem Fall.

+0

Über welche Version von TC reden wir? –

1

Interessanterweise funktionierte es für mich zumindest, sobald ich die Codeabdeckung deaktivierte (d. H. Ein Element im Dropdown-Werkzeug deaktivierte) und den Build ausführte. Wenn ich die Code-Abdeckung wieder aktivierte, funktionierte es (ohne irgendwelche Änderungen an TeamCity oder dem Build-Server). Seltsam!

Ich führe gerade TeamCity Version 8.0.4 (Build 27616).

+0

Welches Objekt haben Sie deaktiviert? Die Tests? –

+1

@KonradViltersten, ich habe nur die Codeabdeckung deaktiviert, dh ich habe * * im * .NET Coverage Tool * -Dropdown ausgewählt. –

0

Dies ähnelt meinem Problem, bei dem die NUnit nicht ausgeführt werden kann, wenn dotCover aktiviert ist.

ich beschlossen dies durch .NET Runtime Einstellung: Plattform: als x86 in der Konfiguration Drop-Down und ich denke, der Fehler zurückzuführen ist Stadt Mannschaft nicht gelingt, herauszufinden, welche die richtige Plattform.

Verwandte Themen