>(Addison-Wesley Professional,2003)一書中,使用下面2個原則來定義TDD:">
您的位置:軟件測試 > 開源軟件測試 > 開源單元測試工具 > Nunit
NUnit詳細使用方法
作者:網(wǎng)絡轉載 發(fā)布時間:[ 2012/12/7 11:44:36 ] 推薦標簽:

  第2步.增加一個NUnit框架引用

  在Microsoft Visual Studio .NET里創(chuàng)建這個例子時,你需要增加一個NUnit.framework.dll引用,如下:

  在Solution Explorer右擊引用,然后選擇增加引用

  NUnit.framework組件,在Add Reference對話框中按Select和OK按鈕。

  圖4-2 描述了這步:

   圖 4-2: 增加一個 NUnit.framework.dll 引用到工程

  第3步.為工程加一個類.

  為工程加一個NumbersFixture類。這里是這個例子的代碼。

  using System;
using NUnit.Framework;
namespace NUnitQuickStart

  {

  [TestFixture]

  public class NumersFixture

  {

  [Test]

  public void AddTwoNumbers()

  {

  int a=1;

  int b=2;

  int sum=a+b;

  Assert.AreEqual(sum,3);

  }

  }

  }

  第4步.建立你的Visual Studio 工程,使用NUnit-Gui測試

  從程序->NUnit2.2打開NUnit-gui,加載本本工程編譯的程序集.

  為了在Visual Studio .NET中自動運行NUnit-Gui,你需要建立NUnit-Gui作為你的啟動程序:

  在 Solution Explorer里右擊你的NunitQuickStart工程。

  在彈出菜單中選擇屬性。

  在顯示的對話框的左面,點擊Configuration Properties夾

  選擇出現(xiàn)在Configuration Properties夾下的Debugging。

  在屬性框右邊的Start Action部分,選擇下拉框的Program作為Debug Mode值。

  按Apply按鈕

  設置NUnit-gui.exe 作為Start Application。,你既可以鍵入nunit-gui.exe的全路徑,也可使用瀏覽按鈕來指向它。

  圖4-3 幫助描述本步驟:

  圖 4-3:將NUnit-Gui 作為工程的測試運行器

  第5步.編譯運行測試.

  現(xiàn)在編譯solution。成功編譯后,開始應用程序。NUnit-Gui測試運行器出現(xiàn)。當你第一次開始NUnit-Gui,它打開時沒有測試加載。從File菜單選擇Oprn,瀏覽NUnitQuickStart.dll的路徑。當你加載了測試的程序集,測試運行器為加載的程序集的測試產(chǎn)生一個可見的表現(xiàn)。在例子中,測試程序集僅有一個測試,測試程序集的結構如圖4-4所示:

  圖 4-4: 測試程序集的測試在 NUnit-Gui中的視圖

  按Run按鈕。樹的節(jié)點變?yōu)榫G色,而且測試運行器窗口上的進度條變綠,綠色代表成功通過。

   4.其他的一些核心概念

  上面的例子介紹了基本的NUnit特性和功能. TestFixture, Test, 和 Assert是3個基本的特征,我們可以用這些特性進行程序員測試了.但是有的時候,你覺得這3個遠遠不夠,比如有的時候打開一個數(shù)據(jù)庫連接多次,有沒有只讓它打開一次的方法呢?如果我想把測試分類,應該怎樣實現(xiàn)呢?如果我想忽略某些測試,又應該如何去完成呢?不用擔心,NUnit已經(jīng)有這樣的功能了.

  下面我們一一作出回答.

  SetUp/TearDown 屬性

  在早期給的test fixture定義里,我們說test fixture的測試是一組常規(guī)運行時資源.在測試完成之后,或是在測試執(zhí)行種,或是釋放或清除之前,這些常規(guī)運行時資源在一確定的方式上可能需要獲取和初始化.NUnit使用2個額外的屬性:SetUp 和TearDown,支持這種常規(guī)的初始化/清除.我們上面的例子來描述這個功能.讓我們增加乘法.

  using System;
using NUnit.Framework;
namespace NUnitQuickStart

  {

  [TestFixture]

  public class NumersFixture

  {

  [Test]

  public void AddTwoNumbers()

  {

  int a=1;

  int b=2;

  int sum=a+b;

  Assert.AreEqual(sum,3);

  }

  [Test]

  public void MultiplyTwoNumbers()

  {

  int a = 1;

  int b = 2;

  int product = a * b;

  Assert.AreEqual(2, product);

  }

  }

  }

  我們仔細一看,不對,有重復的代碼,如何去除重復的代碼呢?我們可以提取這些代碼到一個獨立的方法,然后標志這個方法為SetUp 屬性,這樣2個測試方法可以共享對操作數(shù)的初始化了,這里是改動后的代碼:

  using System;
using NUnit.Framework;
namespace NUnitQuickStart

  {

  [TestFixture]

  public class NumersFixture

  {

  private int a;

  private int b;

  [SetUp]

  public void InitializeOperands()

  {

  a = 1;

  b = 2;

  }

  [Test]

  public void AddTwoNumbers()

  {

  int sum=a+b;

  Assert.AreEqual(sum,3);

  }

  [Test]

  public void MultiplyTwoNumbers()

上一頁123下一頁
軟件測試工具 | 聯(lián)系我們 | 投訴建議 | 誠聘英才 | 申請使用列表 | 網(wǎng)站地圖
滬ICP備07036474 2003-2017 版權所有 上海澤眾軟件科技有限公司 Shanghai ZeZhong Software Co.,Ltd