2015-06-12 87 views
8

標有分類屬性的測試有:ReSharper的是不是忽略的xUnit

[Category("Contract")] 
public class ProgramClientShould 
{ 
} 

或:

[Trait("Contract", null)] 
public class ProgramClientShould 
{ 
} 

和ReSharper的 - >選項 - >工具 - >單元測試: 「跳過自考類別「與價值」合同「

儘管如此,程序客戶端中的測試應該執行。怎麼了?

回答

12

xunit沒有Category屬性,所以resharper跑步者將無法識別該屬性。至於特徵屬性,您需要提供一個值,然後篩選key[value]格式的內容。例如。如果您要使用[Trait("Owner", "Matt")],則需要篩選Owner[Matt]的類別。

特徵關鍵字Category的處理方式不同,只是使用該值,所以[Trait("Category", "integration")]將使用integration作爲resharper選項中的類別過濾器。

+0

您的回答表明ReSharper測試運行器實際上能夠顯示自定義特徵(如'[Trait(「Owner」,「Matt」)]')。看來情況並非如此(在ReSharper Ultimate 2017.3.1中)。 ReSharper唯一能理解的是Category鍵('[Trait(「Category」,「Foo」)]') – bitbonk

+1

是的,這看起來是行爲上的變化 - 它現在只顯示「類別」特徵。我不知道這是故意改變還是迴歸。我在內部提問。 – citizenmatt

+0

這可能是與它相關的錯誤:https://youtrack.jetbrains.com/issue/RSRP-458779 – bitbonk