[ExpectedException(typeof(Exception))]
public void ExcpetionTesting()
{
Ticket ticket = new Ticket();
ticket.Add(3);
ticket.Sell();
ticket.Sell();
ticket.Sell();
ticket.Sell();
}
其中,[ExpectedException(typeof(Exception))]表示我們希望能捕獲到發生的異常,如果沒有捕獲到異常,則表示測試失敗。
后面的代碼很好理解,我們加了三張票,卻賣了四張出去,這可不是炒股,以后沒辦法平倉的。 :)
編譯運行,我們看到以下的測試畫面:
在Ticket類中,我們修改一下Sell方法,讓它變成:
public void Sell()
{
if(amount - 1 < 0)
throw new Exception("Amount不能為0");
amount -= 1;
}
編譯,再測試,結果如下:
好了,到了這里就算完成我們的單元測試之旅了,大家對如何在C#中進行單元測試一定已經有了一個基本的認識。另外,NUnit并不是只針對C#,事實上,你可以在任何.Net語言中使用NUnit來測試你的單元,方法都一樣。
文章來源于領測軟件測試網 http://www.kjueaiud.com/