2016-07-05 23 views
1

Ich versuche, offene Abdeckung zu verwenden, um Code-Coverage-Berichte für mein Projekt zu generieren, aber es deckt nur Testklassen ab, nicht die Quellen, die ich möchte. ich den folgenden Befehl bin mit meinen Tests auszuführen:OpenCover deckt nicht den tatsächlichen Quellcode ab

"C:\Program Files (x86)\OpenCover\OpenCover.Console.exe" -register:user -target:"$nunit_path\nunit-console.exe" -targetargs:"$project_path\Project.Test\Project.Test.dll -noshadow" -mergebyhash -output:C:\Reports\NUnit\projectCoverageReport.xml 

$ nunit_path und $ project_path sind nur die Wege zu meinen Dateien, übersprungen ich ihnen den Befehl klarer zu machen.

Wenn ich diesen Befehl ausführen, bekomme ich die vollständige Abdeckung der Testklassen (in der Assembly Project.Test.dll), aber sonst nichts. Wie kann OpenCover den Quellcode berücksichtigen?

+0

Haben Sie jemals eine Antwort auf diese Frage gefunden? – summea

+0

Ich arbeite nicht mehr an dem Ort, an dem ich das Problem gelöst habe, also kann ich mich nicht wirklich daran erinnern, wie ich es gelöst habe:/Ich glaube, wir haben diese Software benutzt, aber dieses Problem hat sich irgendwie geklärt. Ich erinnere mich, wie. Es tut uns leid :/ – SalysBruoga

Antwort

0

Ein möglicher Grund für dieses Problem ist die Art und Weise, wie pdb-Dateien für das jeweilige Projekt konfiguriert werden. OpenCover erwartet, dass die PDB-Dateien in ihrer "vollen" Form und nicht in ihrer "portablen" Form vorliegen. Standardmäßig markiert Visual Studio pdb-Dateien als "portabel". Sie können dies überprüfen, indem Sie folgendermaßen vorgehen ..

Rechtsklick auf Projekt -> proerties -> Build -> Ausgabe -> Erweitert -> Debug-Informationen.

Hier sollte der Wert 'voll' sein.