是否有用于指定配置的NUnit测试用例属性

时间:2011-04-27 14:09:17

标签: c# unit-testing nunit

我正在编写一个NUnit测试,我想只在Release配置中运行。使用测试用例属性是否有一种优雅的方式?现在,我用编译器指令围绕整个功能块:

我正在使用Nunit 2.5.6.10205。

#if !DEBUG
        [Test]
        public void MyReleaseOnlyTest()
        {
           // stuff
        }
#endif

2 个答案:

答案 0 :(得分:6)

您可以使用[Category]属性。如果您仅使用[Category("Release")]标记仅发布测试,则在正常测试运行中排除该类别,并将其包含在您的发布运行中。

所以现在你的测试成了

[Test]
[Category("Release")]
public void MyReleaseOnlyTest()
{
   // stuff
}

答案 1 :(得分:3)

在#if预处理器中添加Ignore属性,而不是整个测试方法。

#if DEBUG
[Ignore("Only to be run in release")] 
#endif

http://msdn.microsoft.com/en-us/library/4y6tbswk.aspx

您还可以使用Conditional属性

[System.Diagnostics.Conditional("RELEASE")]