亚洲好骚综合-亚洲黄色录像-亚洲黄色网址-亚洲黄色网址大全-99久久99久久-99久久99久久精品国产

您的位置:軟件測試 > 開源軟件測試 > 開源單元測試工具 > Nunit
使用NUnit在.Net編程中進行單元測試
作者:網絡轉載 發布時間:[ 2013/9/6 14:31:22 ] 推薦標簽:

引言:
舉一個可能會發生在你身邊的事件將更能貼近實際,幸好我們現在有一件在程序員看來非常普通的任務:
你第上班,你的項目經理拿給你一疊不算厚的文檔,告訴你的任務是按照文檔中的要求編寫一個.Net類,可能因為任務并不復雜,所以他看上去非常的隨意。
能否很好的完成任務對你來說非常特殊,你拿過來后快速略過了前面大段的項目介紹,因為你知道那些對你并不重要,印象中好象是一個關于售票系統的工程。很快,你找了你需要關注的重點:類的需求說明文檔。你詳細的看了一遍,感覺并不復雜,類名Ticket,有一個只讀的int型公共的屬性,名稱是Amount,還有兩個方法,一個是名稱是Sell,功能是將Amount減去一,表示賣掉了一張票,當然,票可不能為負數,如果是的話,拋出一個異常說明原因。另一個是Add,它有一個int型的參數,功能是將這個參數的值加到Amount中去,可能是表示進票之類的事情吧,你不太關心,反正這個程序很簡單,你掩飾住內心的狂喜,打開電腦,調出編輯器,開始準備寫程序了。
"喂,等等",項目經理不知道什么時候又轉回來了,"我想知道你打算怎么進行單元測試,我關心的是這個"。
"什么是單元測試?"你轉過頭一臉沮喪的看著失望的項目經理。
什么是單元測試:
在程序設計過程中會有許多種測試,單元只是其中的一種,單元測試并不能保證程序是完美無缺的,但是在所有的測試中,單元測試是第一個環節,也是重要的一個環節。單元測試是一種由程序員自行測試的工作。簡單點說,單元測試是測試代碼撰寫者依據其所設想的方式執行是否產生了預期的結果。關于單元測試的重要性已經有許多文章做了很多深入的分析,這里不再贅述。
NUnit是一個為Net準備的自動化單元測試框架,它的作用是幫助你方便的完成單元測試工作,同鼎鼎有名的JUnit一樣,都是xUnit家族的成員。它的下載地址是:http://www.nunit.org。
測試先行:
"什么?先寫測試?"你一定非常驚訝,對!是先來編寫測試代碼,按照極限編程(XP)的理論,寫測試是對軟件進行設計的過程,它的重要性甚至超過了實際完成功能的代碼。先將測試寫完,然后再來完成代碼,這樣,所有的測試通過之日也是程序完成之時。
首先,我們將NUnit提供的要nunit.framework.dll文件引入到工程中,并創建一個名為TicketTest的類:

[TestFixture]
 public class TicketTest
 {
  [Test]
  public void Add()
  {
   Ticket ticket = new Ticket();
   ticket.Add(100);
   Assertion.AssertEquals(100, ticket.Amount);
  }
 }

注意,其中的[TestFixture]和[Test]兩個Attribute為NUnit所規定必須要添加的,這樣,測試框架可以知道哪些類或者方法需要進行測試。
我們在Add方法中定義了一個ticket對象,并給他加了100張票,然后可以使用:
Assertion.AssertEquals(100, ticket.Amount);
來測試ticket的Amount屬性是否確實為100。
接下來,我們再向TicketTest中添加一個測試Sell的方法:

[Test]
  public void Sell()
  {
   Ticket ticket = new Ticket();
   ticket.Add(100);
   ticket.Sell();
   ticket.Sell();
   ticket.Sell();
   Assertion.AssertEquals(97, ticket.Amount);
  }

這里,我們先加了100張票之后一口氣賣掉了3張,然后看看我們是否還剩下97張票。
好了,這兩個方法的測試已經做完了,我們來看一下測試的結果,根據要求,我們寫了如下代碼:

public class Ticket
 {
  private int amount;
  public int Amount
  {
   get
   {
    return amount;
   }
  }

  public void Add(int num)
  {
  }

  public void Sell()
  {
  }
}

上一頁12下一頁
軟件測試工具 | 聯系我們 | 投訴建議 | 誠聘英才 | 申請使用列表 | 網站地圖
滬ICP備07036474 2003-2017 版權所有 上海澤眾軟件科技有限公司 Shanghai ZeZhong Software Co.,Ltd
主站蜘蛛池模板: 精品九九视频 | 色狠狠婷婷97| 涩婷婷| 91精品国产人成网站 | xxxxx在线视频| 免费观看欧美一级高清 | 久久99精品视免费看 | 日批视频在线免费看 | 欧美一级片a | 日日拍夜夜嗷嗷叫视频 | 免费在线日本 | 又黄又变态又免费的视频 | 日韩欧美中文字幕在线视频 | 国产伦理精品 | 免费国产成人高清在线观看麻豆 | 欧美第五页 | 福利三级 | 丁香亚洲| 午夜性色吃奶添下面69影院 | 欧美性高清另类videosex | 你懂的在线视频播放 | 国内精品小视频福利网址 | 午夜涩涩 | 国产成人精品免费2021 | 91精品国产免费久久国语蜜臀 | 国产人成精品综合欧美成人 | 精品国产综合成人亚洲区 | 中国一级特黄高清免费的大片 | 亚洲日本中文字幕天天更新 | 国产精品成人观看视频国产奇米 | 国产性大片黄在线观看在线放 | 日本三级2018亚洲视频 | 色噜噜狠狠成人网 | 99久久亚洲综合精品网站 | 日韩区欧美区 | 五月综合激情久久婷婷 | 欧美黄色片在线播放 | 欧美国产中文字幕 | 精品中文字幕一区二区三区四区 | 中文字幕在线精品视频入口一区 | 蜜桃97爱成人 |