2013-01-17 72 views
3

我有一些麻煩OpenCover工作OpenCover - 找不到PDB

我已經在文件夾結構如下

  • \工具
  • \工具\ NUnit的
  • \工具\ OpenCover
  • \ Buildartifact

當我的代碼編譯後,所有編譯後的代碼都會生成到BuildArtifacts文件夾中。這包括DLL的和相應的.pdb文件

我努力讓OpenCover運行

從PowerShell中,我從根文件夾下輸入以下命令:

\工具\ OpenCover \ OpenCover.Console.exe -register:user -target:。\ tools \ nunit \ nunit-console.exe -targetargs:「。\ buildartifacts \ MVCControllerTests.dll/noshadow」-filter:+ [*] * -output :. \ coverage.xml

不過,我不斷收到消息: 犯下...

沒有結果 - 無組件匹配提供的過濾器進行 儀表 這可能是由於爲符合篩選條件的 請查看該組件缺失PDBS輸出文件並參考使用指南(Usage.rtf)

我已經看過OpenCover/NUnit can't find PDB files,和我有/ noshadow在我targetargs本切換

我attem第一個在targetargs,但後來我從nunit得到錯誤

我也更新了nunit-console.exe.config,並將以下行添加到啓動節點,以確保所有測試.NET4內被執行,而不是.NET3.5

< supportedRuntime版本= 「v4.0.30319」 >

但是,這並沒有區別。

當我看到coverage.xml文件,即使我有noshadow標誌,它仍會出現NUnit的是做了影拷貝

例如,這是存在:

C:\用戶\達倫\應用程序數據\本地的\ Temp \ nunit20 \ ShadowCopyCache \ 10344_634940293912865718 \ Tests_275832668 \裝配\ DL3 \ db34ecee \ a0f236ee_a7f4cd01 \ TABusinessInterface.DLL

得到任何幫助。

回答

4

OpenCover WIKI指出,使用PowerShell的時候,你應該用引號括整個論點即

-targetargs:".\buildartifacts\MVCControllerTests.dll /noshadow" 

成爲

"-targetargs:.\buildartifacts\MVCControllerTests.dll /noshadow" 
+0

肖恩。感謝那。它現在爲我工作 –