2011-11-17 49 views
4

我正在使用Teamcity與NUnit和dotCover。在我的配置中,我從dotCover覆蓋範圍中排除了一個特定的命名空間及其包含的類。這部分工作正常,但在運行構建時,生成的報告仍然在報告中顯示排除的程序集,但排除的程序集的覆蓋率爲0%。這個0%的覆蓋率也反映在總計覆蓋率百分比中,因此報告的整體情況並未顯示正確的統計數據。dotCover排除代碼仍然在報告中顯示

如何讓排除的程序集(或本例中的類)不出現在覆蓋率報告中?

編輯:我想說清楚的是,我沒有在尋找一種方法從dotCover中排除代碼,因爲我已經意識到如何做到這一點。我正在尋找在爲Teamcity創建的報告中刪除或未顯示排除代碼的方式。

+0

如何排除命名空間?嘗試: +:程序集= *;類型= *;方法= *** –

+0

這就是我如何做是的。但排除類型仍然在報告中顯示,但現在被覆蓋0%,這是不可取的。當我排除它時,我只希望它完全隱藏在報告中。 –

回答

0

如果要排除例如TestAsseblies這是你必須使用過濾器:

-:*Tests 

這將排除「HelloWorld.Tests.dll」,但包括「HelloWorld.dll」。

更詳細和完整的幫助可以在http://confluence.jetbrains.net/display/TCD65/JetBrains+dotCover

+0

我排除了程序集內的特定命名空間,並且它正在被成功排除。我的問題不是如何從dotCover中排除代碼,而是如何從團隊城市中顯示的報告中「隱藏」排除的代碼。在TC中構建報表時,排除的名稱空間仍然顯示,但是覆蓋率爲0%,並且也包含在總覆蓋率百分比中。在桌面版的dotCover中,您可以右鍵單擊報表中的名稱空間並選擇「隱藏」 - 我的問題是如何在Team City中完成類似的操作。 –

+0

這只是一個猜測:查看桌面版本的dotCover的配置並查看TC項目(xml)的配置。也許你會發現一些你可以插入的選項。否則直接在代理上調用dotCover控制檯作爲命令腳本任務。 這裏有一些幫助:http://blogs.jetbrains.com/dotnet/2010/07/running-code-coverage-from-the-console-with-dotcover/ – SeriousM

1

找到我刪除了我的測試項目從dotCover報告創建通過添加以下行來「過濾器:」
- :* Tests.dll
- : Utilities.Tests

和屬性過濾
- :模塊= Utilities.Tests

現在我得到的報告沒有測試項目/代碼

Regards, Dejan

相關問題