junit單元測試(二)--junit基礎
1、基礎介紹
1.junit是一種測試**的框架,測試的目的是:保證**沒錯,而不是保證**正確。
2.測試類一般不要和目標類放在一起,但編譯成的class檔案是放在一起的,這樣可以保證產品**與測試**分離,互不影響。
3.單元測試主要是來測試程式的結果和自己期望的值是否相等。
2、junit測試框架目前大體分為兩種(junit 3.8 和 junit 4.x)
2.1、junit 3.8
涉及到的包一般是 import junit.framework.*
在 junit 3.8 中,測試類要繼承testcast類,而testcast類又繼承於assert類,測試方法需滿足如下原則:
1)修飾符設為 public
2)返回型別 void
3)沒有方法引數
4)方法名稱必須以test開頭
5)測試類都繼承於testcase類
另外,使用過程中,測試類不能依賴於測試方法的執行順序
在新建的測試類中,有兩個方法需要強調一下:
setup方法和testdown方法:都是testcase類的方法
1)setup方法是在執行每個測試方法之前執行的,可以做一些初始化的工作,例如類例項宣告。
2)testdown方法是在執行每個測試方法之後執行的,例如在此銷毀物件。
2.2、junit 4
涉及到的包是 import org.junit.*
在junit 4 當中測試類無需繼承於 testcase類,測試方法的名字也無需以test開頭,主要以註解的方式來定義,只要在測試方法加上@test就可以進行測試,但有些原則還是會以junit3 的風格來設計,比如測試方法以test開頭,習慣問題吧,
•@test :定義乙個測試方法的標誌
•@test(timeout=1000) :設定超時時間,如果測試時間超過了你定義的timeout,測試失敗
•@test(expected) : 申明出會發生的異常,比如 @test(expected = exception.class)
•@before : 跟junit 3.8 上的setup() 方法同樣的效果,方法名最好和setup()一樣,但不強求,在每乙個測試方法之前被執行
•@after : 跟junit 3.8 上的teardown() 方法同樣的效果,方法名最好和teardown()一樣,但不強求,在每乙個測試方法之後被執行
•@beforeclass : 被該註解申明的方法,功能是:在所有的測試方法之前執行,只執行一次
•@afterclass : 被該註解申明的方法,功能是:在所有的測試方法之後執行,只執行一次
•@ignore :讓 測試方法 或 測試類 不被執行,讓其失去測試的功能
Junit 單元測試
測試類package com.lin.music item import android.content.contentresolver import android.content.context import android.database.cursor import android.net....
Junit單元測試
最近在寫一模組的 不能再像原來一樣不認真考慮測試了,因為看看junit如何寫單元測試,這裡作一些筆記。2.關於使用junit的目的。主要有四種 摘自某參考資料。對此,我覺得我是想測試某個類中的某幾個方法,因為覺得這幾個方法比較容易出問題,不過這樣是顯得有些不嚴謹了。其實往往測關鍵方法的時候,其中也都...
Junit單元測試
書寫規範 包 寫在.test包下或者.junit包下 類命名規範 xxtest 測試方法規範 命名規範 test xx 其他規範 返回值為void 空參如何使用junit單元測試?在需要測試的方法上加上 test註解,ctrl 1導包 test public void testgetclient j...