2010-10-14 83 views
1

我跑NCoverExploler,配置它,所以命令行看起來是這樣NCover 1.5.8不會產生coverate報告

"D:\Development\Projects\t.net\lib\NCover\NCover.Console.exe" //reg //w "D:\Development\Projects\t.net\build_output\t.net" //v "D:\Development\Projects\t.net\lib\NUnit\nunit-console.exe" t.Core.Tests.dll /framework=4.0 

輸出coverage.xml顯示爲空。同時,如果我通過Visual Studio(由TestDriven.Net)運行Coverate報告,它會完美地生成。

我比較了兩種情況下的coverage.log文件。如果我通過NCoverExporer運行:

事件:建立了日誌鏈接。 事件:建立通信鏈接。 消息:準備好命令輸入。 事件:詳細記錄禁用 事件:啓用日誌 事件:AutoExclusion啓用 消息:監視組件:(所有加載的程序集) 消息:不包括類型和具有這些屬性的方法:CoverageExcludeAttribute; 消息:收到司機準備好的事件。 消息:V2.0.50727

如果TestDriven.net

事件:登錄建立鏈接。 事件:建立通信鏈接。 消息:準備好命令輸入。 事件:詳細記錄禁用 事件:啓用記錄 事件:自動排除啓用 消息:監視程序集:Microsoft.Web.Mvc; Moq; T.Core; T.Core.Tests; Web; 消息:使用這些屬性排除類型和方法:CoverageExcludeAttribute; System.Diagnostics.CodeAnalysis.ExcludeFromCodeCoverageAttribute; 消息:收到司機準備好的事件。 MESSAGE:v4.0.30319

請參閱監控裝配和MESSAGE的區別:v4.0.30319。在TD.net的情況下,它正確地支持.NET框架。

任何線索,如何使NCover在TD.net中發揮作用?它在哪裏配置?

+0

任何人遇到類似的東西? – 2010-10-15 11:18:43

+0

我有完全相同的問題。你有沒有想過深究這一點? – 2011-02-07 11:55:50

+0

@Sam ..不,我把它當作未解決.. – 2011-02-10 11:41:19

回答

2

試試我在這裏找到的答案:Force NCover 1.5.8 to use v4 framework like testdriven.net does?

我還用.net 4使用該問題的其他答案運行所有程序,但不知道這是否重要。我會調查並更新答案。

我已經在其他線程中更新了我的答案,並使用了我可以用來在我的(win 7 x64)機器上運行並運行的解決方案。希望它會幫助你,我現在在我的coverage.log中獲得MESSAGE: v4.0.30319

0

NCover 1.5.8不支持.net 4.0,它看起來像TD.NET正在挑選.NET 4作爲默認設置。

+0

不真的得到這個?如果NCover不支持它,它如何在TD.net中工作? – 2010-10-19 18:40:45

+0

它必須將代碼編譯爲.net 2代碼並以此方式運行。 1.5.8只支持.net 2.0 profiler api。 – 2010-10-29 01:07:49

+0

1.5.8只支持.net 2.0 profiler api,但它可能會讓.net 4.0應用程序與.net 2.0 profiler api交互。沒有關於成功的保證,但在其他答案中的鏈接問題的解決方案對我有效。 – 2011-02-07 17:11:19