再給大家介紹一個分類屬性[Category(string name)],利用這個分類屬性,我們可以為每個方法定義類別。
[Test, Ignore("Ignore"), Category("Category A")]
public void TestAdd()
...{
Console.WriteLine("TestAdd() Begin");
expected = 12;
actual = cal.Add(a, b);
Assert.AreEqual(expected, actual);
Console.WriteLine("TestAdd() End");
}
[Test, Category("Category B")]
[Explicit]
public void TestMinus()
...{
Console.WriteLine("TestMinus() Begin");
expected = 8;
actual = cal.Minus(a, b);
Assert.AreEqual(expected, actual);
Console.WriteLine("TestMinus() End");
}
[Test, Category("Category A")]
public void TestMultiply()
...{
Console.WriteLine("TestMultiply() Begin");
expected = 20;
actual = cal.Multiply(a, b);
Assert.AreEqual(expected, actual);
Console.WriteLine("TestMultiply() End");
}
[Test, Category("Category B")]
public void TestDivide()
...{
Console.WriteLine("TestDivide() Begin");
expected = 5;
actual = cal.Divide(a, b);
Assert.AreEqual(expected, actual);
Console.WriteLine("TestDivide() End");
}
重新生成項目,在NUnit中,我們可以看到:
這里有我們定義的兩個分類,我們選中"Category A",切換回"Tests"點"Run",我們看:
只測試了我們設(shè)置的"Category A"的一個方法,另一個方法是因為我們設(shè)置了[Ignore]所以沒有執(zhí)行測試。
好,到這里,我們已經(jīng)把NUnit主要的屬性學完了,接下來的章節(jié)我們將從實例出發(fā)學習NUnit。