2013-05-12 13 views
6

Ich habe eine einfache ASP.Net MVC 4-Anwendung mit 3 einfachen Tests. Jeder dieser TestsProblem mit Code-Abdeckung in VS 2012

laufen erfolgreich bis zum Abschluss, aber der Code Coverage Fenster gibt mir die folgende Fehlermeldung:

Empty results generated: No binaries were instrumented. Make sure the tests ran, required binaries were loaded, had matching symbol files, and were not excluded through custom settings. For more information see http://go.microsoft.com/fwlink/?LinkID=253731

ich getan habe einige der Forschung, aber nichts hat sich mein Problem bisher gelöst.

  • Ich weiß, dass die Tests laufen
  • Ich habe PDB-Dateien in der gleichen Position wie meine DLL
  • Ich optimsing nicht durch Code
  • Ich kann keine .testsettings
  • nicht finde ich Datei Habe auch meinen VS 2012 Ultimate als Administrator ausgeführt, aber kein Glück.

Wenn ich die .coverage Datei finden, die alle es in sich hat ist:

PCHÿ 

Nicht die xmls Ergebnisse oder Fehlermeldung ich erwarte.

+0

ich dieses Problem hatte, in meinem Fall wurde es gelöst, als ich Visual Studio als Administrator – lmcarreiro

Antwort

5

Ich weiß, das ist über ein Jahr alt. Nichtsdestoweniger habe ich genau das gleiche Problem gefunden, sogar bis zum "PCH" -Text in der .coverage-Datei und habe bis jetzt keine Lösung gefunden. Aber sicherlich hat jemand anderes das Problem auch, nur für den Fall, hier ist die einfache Lösung:

Nach Überprüfung dieser MSDN link und Befolgen der Ratschläge hatte ich immer noch das gleiche Problem. Also, am Ende, ich stoppte VS, ging zum Stammlösung Verzeichnis und löschte die .suo Datei. Das Attribut "Versteckt" ist festgelegt, sodass Sie den Explorer möglicherweise so einstellen müssen, dass versteckte Dateien angezeigt werden.

Starten Sie VS neu und führen Sie die Codeabdeckungs-Tests erneut aus. Alles gut.

+0

Hallo Shunty lief. Dieses Problem existiert noch. Ich habe an anderer Stelle erwähnt, dass er die .su Datei entfernt und VS 2012 neu gestartet hat, aber immer noch kein Glück. Ich entfernte auch den gesamten TestResults-Ordner und versuchte es erneut, ohne Glück. – brettc4

+0

Ich habe das Problem nicht gehabt, da kann ich nicht viel mehr Hilfe geben. Aber, wenn Ihr Code unter Quellcodeverwaltung steht, könnten Sie versuchen, ihn an einem neuen Ort auszuprobieren und von dort aus zu bauen/testen und sehen, was passiert. Ich bin mir sicher, dass es etwas mit einer der transienten/lokalen Dateien zu tun hat, die VS verwaltet und die nicht in die Quellcodeverwaltung gehen sollte, damit es funktioniert. – shunty

4

Wenn Sie die Code Coverage auch nach dem Löschen der * .suo-Datei nicht ausführen können, überprüfen Sie bitte Ihre Event Viewer auf Fehler. In meinem Fall nach jedem Lauf hatte ich folgende Fehlermeldung:

„TraceLog Profiler versagt bei der Initialisierung aufgrund eines Mangels an Instrumentierung Methoden, Verfahren vstest.executionengine.x86.exe“

ich gefunden habe, die Antwort here.

Falls der Link nicht mehr verfügbar, ich bin einfügen Inhalt hier:

If you find yourself with a an empty .coverage file and see errors similar to the below in your event logs you most probably have a corrupt install

(info) .NET Runtime version 4.0.30319.17929 - The profiler has requested that the CLR instance not load the profiler into this process. Profiler CLSID: '{b19f184a-cc62-4137-9a6f-af0f91730165}'. Process ID (decimal): 12624. Message ID: [0x2516].

(Error) TraceLog Profiler failed in initialization due to a lack of instrumentation methods, process vstest.executionengine.x86.exe

Check

a) Environment variable VS110COMNTOOLS is set to \common7\tools

b) Regkey HKLM\SOFTWARE\Microsoft\VisualStudio\11.0\InstallDir is set to your \Common7\IDE\

c) covrun32.dll and covrun64.dll exist in "\Team Tools\Dynamic Code Coverage"

Viel Glück,

Nadav

+0

Ich habe 'covrun64.dll' nicht in meinem Computer, und Code Coverage funktioniert gut. Das ist nicht das Problem. –

+0

Danke für Hilfe! In meinem Fall wurde die Umgebungsvariable falsch gesetzt. Es gab keine Fehlermeldungen, nur kein Code-Coverage-Ergebnis. – Pegieo

+0

froh, dass ich helfen könnte ;-) – nadavy

Verwandte Themen