C# Nunit:向特定测试用例添加类别
我想运行一小组NUnit测试用例作为预签入健全性检查,并在我的签入和夜间测试运行中运行一组更全面的测试用例 所以我希望我可以用“Category”属性来修饰某些测试用例,并且只让这些测试用例在预签入时运行。然而,这似乎不起作用——如果我包括这个类别,那么所有的测试用例都会运行 有没有办法限制通过类别运行的测试用例的数量C# Nunit:向特定测试用例添加类别,c#,nunit,testcase,C#,Nunit,Testcase,我想运行一小组NUnit测试用例作为预签入健全性检查,并在我的签入和夜间测试运行中运行一组更全面的测试用例 所以我希望我可以用“Category”属性来修饰某些测试用例,并且只让这些测试用例在预签入时运行。然而,这似乎不起作用——如果我包括这个类别,那么所有的测试用例都会运行 有没有办法限制通过类别运行的测试用例的数量 [TestFixture] public class TestAddition { [TestCase(1, 2, 3), Category("PreCheckin")]
[TestFixture]
public class TestAddition
{
[TestCase(1, 2, 3), Category("PreCheckin")]
[TestCase(2, 4, 6)]
[TestCase(3, 6, 9)]
public void AdditionPassTest(int first, int second, int expected)
{
var adder = new Addition();
var total = adder.DoAdd(first, second);
Assert.AreEqual(expected, total);
}
}
如果我尝试运行此命令:
C:\> "C:\Program files (x86)\Nunit 2.6.4\bin\nunit-console.exe" /nologo ^
NUnitTestCase.dll /labels /include=PreCheckin
ProcessModel: Default DomainUsage: Single
Execution Runtime: net-3.5
Included categories: PreCheckin
***** NUnitTestCase.TestAddition.AdditionPassTest(1,2,3)
***** NUnitTestCase.TestAddition.AdditionPassTest(2,4,6)
***** NUnitTestCase.TestAddition.AdditionPassTest(3,6,9)
Tests run: 3, Errors: 0, Failures: 0, Inconclusive: 0, Time: 0.0743007328107035 seconds
Not run: 0, Invalid: 0, Ignored: 0, Skipped: 0
我只希望运行一个测试用例(1、2、3)现在所有测试都使用Category属性。将代码更改为此:) 我注意到,如果您从ReSharper“单元测试浏览器”运行“”测试,它将运行上述所有三个测试用例。
[TestFixture]
public class TestAddition
{
[TestCase(1, 2, 3, Category = "PreCheckin")]
[TestCase(2, 4, 6)]
[TestCase(3, 6, 9)]
public void AdditionPassTest(int first, int second, int expected)
{
var adder = new Addition();
var total = adder.DoAdd(first, second);
Assert.AreEqual(expected, total);
}
}