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

您的位置:軟件測試 > 開源軟件測試 > 開源單元測試工具 > Nunit
掌握單元測試工具Nunit教程
作者:網絡轉載 發布時間:[ 2013/4/7 16:12:52 ] 推薦標簽:

  過程

  測試代碼必須做以下幾件事情:

  準備測試所需的條件

  調用要測試的方法

  驗證被測方法的行為和期望的行為是否一致

  完成后清理各種資源

  為了使用NUnit框架,需要做這些工作:

  1.使用using聲明引用必要的NUnit類(并添加一個指向NUnitDll的引用)

  2.定義一個測試類,必須是Public的、包換一個public的沒有參數的構造函數,并且在類定義上加上[TestFixture]attribute標記

  3.在測試類中包含用[Test]attribute標記的方法。

  特性

  在使用NUnit框架時,除了上面提到的[TestFixture]和[Test]特性外,還有一些有用的特性。靈活使用這些特性,將有助于提高測試代碼開發的效率。

  1. Per-method的Setup和Teardown

  [Setup]:用此Attribute指定的方法用于環境的建立,NUnit在調用每個[Test]方法之前,將調用此特性標記的方法

  [Teardown]:和[Setup]一樣,只是調用的時機是在每個[Test]方法完成后,用于環境的清理。

  2. Per-class Setup和Per-class Teardown

  [TestFixtureSetup]以及[TestFixtureTearDown]特性和上述的[Setup]以及[Teardown]類似,只是其作用于整個[TestFixture]類而已。可以使用這兩個特性標記的方法對整個test class設置和清理環境。

  3. 使用Categories分類

  [Category(“分類名”)]用于指定某個測試方法所屬的“類型”。用此特性將各個測試方法分類后,可以在NUnit環境中指定需要執行的類型。

  可以將此特性寫在[Test]特性一起,如:

  [Test, Category(“test_0001”)]

  也可以分開兩行:

  [Test]

  [Category(“test_0001”)]

  Category還有一個Explicit屬性,可以顯式排除該Category的運行(除非在NUnit GUI中指定),寫法如下:

  [Category(“test_0001”, Explicit=true)]

  4.測試預期的異常:ExpectedException

  對測試而言有兩種異常:從測試代碼拋出的異常;由于某個模塊錯誤而引發的異常.

  第二種異常會在NUnit中捕獲并作測試失敗處理。而有時我們需要測試被測試方法是否拋出了期望的異常(例如,特意傳入的錯誤參數),可以用以下方法。

  [ExpectedException(typeof(SomeException))]或:[Test,ExpectedException(typeof(SomeException))]

  注意,一旦期望的異常拋出了,剩余的代碼會被跳過。軟件測試

  5.臨時忽略一些測試:Ignore

  當你寫了一些測試代碼,但并不打算馬上執行時,可以使用Ignore特性。

  [Test,Ignore(“message”)]

  這個測試將被跳過,并且在NUnit GUI中給出黃色的狀態欄。

  技巧

  有六個值得測試的具體部位,它們能夠提高你的測試水平。這六個方面可以統稱為Right_BICEP:

  Right : 結果是否正確(Right)

  對于測試而言,首要的也是明顯的任務是查看所期望的結果是否正確-驗證結果。

  這里的結果是指確認代碼所做的和你的期望是一致的。

  B : 邊界(boundary)條件是否正確

  邊界條件包括許多內容,將在下一節(2.3.邊界條件)中集中描述。軟件測試 

    I : 是否可以檢查反向(inverse)關聯

  對一些方法,可以用反向的邏輯關系來驗證它們。例如,為了檢查某條記錄是否成功的插入了數據庫,可以通過查詢這條記錄來驗證,等等。

  值得注意的是,當同時編寫原方法和它的反向測試時,一些BUG可能會被兩者中都有的錯誤所掩飾。在可能的情況下,應該用不同的原理來實現反向測試。

  C : 是否可以使用其它方法來跨檢查(cross-check)結果

  [NextPage]

  E : 錯誤條件(error condition)是否可以重現

  應該能夠通過強制引發真實世界中的錯誤-網絡斷開、程序崩潰等-來測試代碼如何處理這些問題。簡單的無效參數之類的錯誤會很簡單,但要模擬復雜的錯誤需要一些特殊的技術。在下面的文字中,將討論使用Mock技術來解決如何強制產生錯誤的問題。

  P : 性能(performance)方面是否滿足條件

  這里的性能特征并不是指程序的性能本身,而是指性能的那種“隨著規模增大,問題越來越復雜”的趨勢。我們應該使用一個性能特性的快速回歸測試,避免出現某些修改使得程序變得很慢卻無法對其進行定位的情況。

軟件測試工具 | 聯系我們 | 投訴建議 | 誠聘英才 | 申請使用列表 | 網站地圖
滬ICP備07036474 2003-2017 版權所有 上海澤眾軟件科技有限公司 Shanghai ZeZhong Software Co.,Ltd
主站蜘蛛池模板: 日本黄色一级片视频 | 一级毛片免费观看 | 国产精品无码制服丝袜 | 天天射天天射天天干 | a级午夜毛片免费一区二区 a级午夜理论免费毛片 | 国产成人99精品免费观看 | 久久久无码精品亚洲日韩按摩 | 日韩视频一区二区三区 | 色久视频| 麻豆国产视频 | 国产日韩欧美亚洲精品95 | 在线观看黄色网 | 午夜视频体验区 | 国产1区2区在线观看 | 欧美亚洲国产激情一区二区 | 欧美狠狠入鲁的视频极速 | 三级视频网址 | 色多网站免费视频 | 黄黄的网站在线观看 | 456极品嫩模在线视频 | 日批免费观看视频 | 亚洲天堂久久新 | 一个人看的www高清免费 | 色噜噜狠狠色综合免费视频 | 宅男在线影院 | 最近更新2019中文字幕国语 | 一个人免费观看在线视频www | 亚洲欧美国产视频 | 在线视频精品一区 | 色视频在线观看 | 一卡二卡在线 | 久久久久久97 | 国产精品免费看 | 欧美日韩亚洲综合在线一区二区 | 曰批免费视频播放免费观看网站 | 免费看黄无遮挡滚床单视频 | 色香蕉视频 | 韩国午夜影院 | 亚洲日本中文字幕在线 | 国产一级淫片视频免费看 | 黄色片大全在线观看 |