2013-03-27 50 views
1

我在TeamCity上運行我的CI構建,並試圖獲得我的覆蓋率報告以排除我的測試dll。這是我的可執行命令格式化爲可讀性。如何從Jetbrains中排除xunit測試程序集從命令行運行的dotCover覆蓋率報告

我安裝了dotCover 2.0的xUnit的contrib的dll中的所有團隊市代理商

dotCover.exe 
    cover 
    /TargetExecutable="Path/To/XUnit/Runner" 
    /TargetArguments="My/Test/Assembly/Path" 
    /Output=coverage.dcvr 

其中一期工程,併產生下列覆蓋率報告

My Coverage Report My in depth coverage report

正如你所看到的從第二張圖片我的Web.Tests DLL包含在覆蓋報告中。 我已嘗試以下步驟來濾除測試DLL

dotCover.exe 
    cover 
    /TargetExecutable="Path/To/XUnit/Runner" 
    /TargetArguments="My/Test/Assembly/Path" 
    /Output=coverage.dcvr 
    /Filters=-:module=MyAssembly.Web.Tests; 

/Filters=-:*.Tests 
/Filters=-:MyAssembly.Web.Tests 
/Filters=-:module=MyAssembly.Web.Tests 

這些產生被報告在所有

我在日誌下面的XML

<DenyFilters> 
    <Item> 
     <AssemblyOrModuleFilter>MyAssembly.Web.Tests</AssemblyOrModuleFilter>    
     <ClassFilter>*</ClassFilter> 
     <FunctionFilter>*</FunctionFilter> 
    </Item> 
</DenyFilters> 

然而,這將停止任何使用dotCover v2.0.425.72。

我想我可能已經找到了dotcover的限制,在這裏的xUnit


相關Q的

回答

1

是多久時的情況你寫了一個問題,你很快找到答案.. 。

具有以下XML沒有過濾的結果,在日誌中

<AllowFilters> 
    <Item> 
     <AssemblyOrModuleFilter>*</AssemblyOrModuleFilter> 
     <ClassFilter>*</ClassFilter> 
     <FunctionFilter>*</FunctionFilter> 
    </Item> 
</AllowFilters> 
<DenyFilters /> 

添加該行/Filters=-:module=MyAssembly.Web.Tests改變XML來造成的任何東西沒有申報爲允許過濾器被殺害了。

<AllowFilters /> 
<DenyFilters> 
    <Item> 
     <AssemblyOrModuleFilter>MyAssembly.Web.Tests</AssemblyOrModuleFilter> 
     <ClassFilter>*</ClassFilter> 
     <FunctionFilter>*</FunctionFilter> 
    </Item> 
</DenyFilters> 

所以解決方法是/Filters=+:module=*;class=*;function=*;-:module=MyAssembly.Web.Tests;這給下面的XML

<AllowFilters> 
    <Item> 
     <AssemblyOrModuleFilter>*</AssemblyOrModuleFilter> 
     <ClassFilter>*</ClassFilter> 
     <FunctionFilter>*</FunctionFilter> 
    </Item> 
</AllowFilters> 
<DenyFilters> 
    <Item> 
     <AssemblyOrModuleFilter>MyAssembly.Web.Tests</AssemblyOrModuleFilter> 
     <ClassFilter>*</ClassFilter> 
     <FunctionFilter>*</FunctionFilter> 
    </Item> 
</DenyFilters> 

什麼faff!

+0

如何在命令行中添加幾個模塊? – ShaneKm 2016-01-22 21:07:29

相關問題