OpenCover generiert einen leeren Bericht

8

Ich verwende OpenCover , um die Codeabdeckung für ein einfaches C # -Projekt zu bestimmen.

Das Problem

Obwohl ich sehen kann, dass MSTest die Komponententests ausführt (und erfolgreich ist), ist der generierte Bericht leer.

Details

Dies ist der Befehl, den ich verwende:

%Vor%

Die Ausgabe

%Vor%

Der Inhalt des generierten Berichts:

%Vor%

Umgebung

Der Code läuft unter Windows 7 64-Bit, wird jedoch in einer 32-Bit Visual Studio-Eingabeaufforderungsumgebung ausgeführt.

BEARBEITEN Ich führe den Befehl im Verzeichnis mit dem Debug-Build der Komponententests aus und habe das OpenCover-Verzeichnis zum Umgebungspfad hinzugefügt.

Was ich versucht habe

Ich suchte nach ähnlichen Problemen mit PartCover (weil OpenCover eine Art von Zweig zu sein scheint), konnte aber nichts finden, das dem Problem entsprach und eine Lösung vorstellte.

EDIT Ich habe auch mit einem breiteren Filter -filter:+[*]* getestet, aber das hat die Ausgabe in keiner Weise verändert.

BEARBEITEN Ich habe auch mit dem Argument MSTest /noisolation getestet wie hier erwähnt . Immer noch keine Ergebnisse.

BEARBEITEN Ich habe auch getestet, indem ich den Filter komplett entfernt habe und auf den Standardfilter zurückgegangen bin. Keine Ergebnisse.

    
Erno de Weerd 01.07.2011, 12:48
quelle

3 Antworten

6

Sie sollten den Schalter -register: user verwenden können, um eine Benutzerregistrierung durchzuführen, d. h. er registriert (und hebt die Registrierung auf), ohne die vollständigen Administratorrechte zu benötigen.

    
Shaun Wilde 01.07.2011, 21:29
quelle
0

Nachdem ich eine Pause gemacht hatte, klärte sich meine Meinung und ich vermutete die COM-Registrierung, die von OpenCover durchgeführt wurde, also überprüfte ich das Eventlog.

Tatsächlich ist die COM-Registrierung fehlgeschlagen. Also entschied ich mich, die Eingabeaufforderung zu starten, da der Administrator vermutete, dass ich von UAC behindert wurde

Wenn Sie den Befehl ausführen, der das /noisolation -Flag enthält, wird der Prozess angehalten.

Ohne dieses Flag wird der Bericht generiert und korrekt ausgefüllt.

Ich denke, ich werde die COM-DLL dauerhaft registrieren, damit ich OpenCover mit den von mir bevorzugten Anmeldeinformationen ausführen kann.

Eine andere Sache, die ich tun könnte, ist ein Problem auf der OpenCover-Site hinzuzufügen, das besagt, dass es eine Ausnahme verschluckt. (Es sei denn, Shaun Wilde liest das und schlägt mich dazu)

    
Erno de Weerd 01.07.2011 16:22
quelle
0

Ich hatte ein ähnliches Problem mit NUnit 2.6 unter Windows XP. Jeder Bericht war leer, bis ich das magische Register: user flag hinzufügte. @ Shaun-Wilde, was genau macht diese Flagge?

    
Juancentro 18.04.2012 00:49
quelle