Ich habe gerade eine Reihe von Projekten auf VS2015/C# 6 aktualisiert.Autoeigenschaften aus Code Coverage in Visual Studio 2015 ausschließen
Jetzt MSTest Code Coverage Analyse berichtet, dass einige automatische Eigenschaften nicht durch Komponententests abgedeckt sind. Dies war in Visual Studio 2013 nicht der Fall, und ich vermute, dass dies etwas mit den neuen Eigenschaften von autoproperty in C# 6 zu tun hat.
Der Umgang mit all diesen falsch-positiven Ergebnissen vereitelt den Zweck des Code-Coverage-Tools, da es praktisch unmöglich ist, tatsächlichen Code zu identifizieren, der keine Testabdeckung bietet. Wir wollen keine Komponententests für alle unsere DTOs schreiben, und ich möchte lieber nicht das Projekt durchgehen, in dem jede einzelne Auto-Eigenschaft mit ExcludeFromCodeCoverage
kommentiert wird.
Ich habe eine Arbeits MCVE erstellt bei https://github.com/iaingalloway/VisualStudioCodeCoverageIssue
- öffnen
VisualStudio2013.sln
in Visual Studio 2013 Premium-oder Ultimate. - Klicken Sie auf Test -> Codeabdeckung analysieren -> Alle Tests.
- Beachten Sie, dass das Fenster "Code Coverage Results" 0 Blöcke "Not Covered" meldet.
- öffnen
VisualStudio2015.sln
in Visual Studio 2015 Unternehmen. - Klicken Sie auf Test -> Codeabdeckung analysieren -> Alle Tests. Beachten Sie
- , dass das Fenster Berichte 1 Block "Nicht abgedeckt" "Code Coverage Ergebnisse" (der Getter für ExampleDto.Value)
Ist es möglich, die integrierten Code-Coverage-Tool zu konfigurieren, in Visual Studio 2015, um Auto-Eigenschaften wie Visual Studio 2013 zu ignorieren?
Dieses Verhalten einen Fehler in Visual Studio 2015. Es gibt zu sein scheint noch keine Abhilfen anders als mit '[ ExcludeFromCodeCoverage] '. Sie können den Fortschritt des Tickets überwachen unter: - https://connect.microsoft.com/VisualStudio/Feedback/Details/1742106 –