2012-08-12 75 views

回答

1

在啓用VS Test Impact(代碼覆蓋率)分析的情況下,痣不會運行。
我確定痣也與NCover不兼容。

要分析代碼覆蓋率,必須檢測目標代碼。 Instrumentation是一個編譯器進程,它在開發人員編寫的每行代碼之前基本上將一個索引調用插入到coverage分析器中。

當索引報告給分析儀時,該行代碼被標記爲被覆蓋。複雜的邏輯評估可能會分解爲基本組件,以確保其部件的覆蓋範圍取決於所使用的分析工具。

當引入痣時,這種方法會崩潰。
痣基本上是在目標組件符合CLR之後重新接線方法調用。

因此,代碼覆蓋率檢測將報告錯誤的結果,因爲一些被測試的代碼被繞到代表。代碼覆蓋率會報告覆蓋率低得多,錯誤的百分比,因爲在繞行時,儀器跳動會被忽略。