7. NUnit的框架
使用NUint框架的小要求
1using NUint.Framework;
2[TestFixture]
3public class TestSimple
4{
5 [Test]
6 public void TestMethod()
7 {
8 Assert.AreEqual(2, 4/2);
9 }
10}
1)需要NUint.Framework的命名空間,項目中需要引用NUint.dll;
2)每個包含測試的類都必須帶TestFixture屬性標記,且這個類必須是public的。
3)測試類包含的所有帶Test屬性標記的public方法都會被NUint自動執(zhí)行。
8.NUint的分類Categories
用Category的概念提供了標記和運行一個個單獨的測試和TestFixture的簡單方法。
一個Category是自己定義的一個名字。可把不同的測試方法關聯(lián)到一個或多個Category,然后運行測試的時候選擇自己想要運行的Category。
如,實際中有些測試只需幾秒能完成,而有些則須長時間才能完成,為了避免每次都執(zhí)行長時間的測試,可使用分類來標記它們,然后運行測試指定需要運行的Category。
1[Test]
2[Category("Short")]
3public void ShortTest()
4{
5 //do some tests.
6}
7[Test, Category("Long")] //兩種屬性的寫法可以
8public void LondTest()
9{
10 //do some tests.
11}
同樣,有時需要:當沒有明確選擇任何Category時,希望某些Category的測試能夠被運行;而當顯示選擇一些Category時,則只有被選擇的Category才會被執(zhí)行。
則需在Category屬性的Explicit設置為真。
如:
[Category("Special", Explicit=true)]
在運行GUI中沒有指定任何Category情況下,上述設置會使該Category不會被運行測試。
默認情況下,即一個方法沒有指定任何Category時,相當于沒有顯示指定Explicit(即Explicit=false),這類方法都會被執(zhí)行。