我正在编写一个NUnit测试,我想只在Release配置中运行。使用测试用例属性是否有一种优雅的方式?现在,我用编译器指令围绕整个功能块:
我正在使用Nunit 2.5.6.10205。
#if !DEBUG
[Test]
public void MyReleaseOnlyTest()
{
// stuff
}
#endif
答案 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")]