單元測試之Junit測試框架

看完這篇文章,不要再說自己不會單元測試了 ! ! !

Junit是什麼!?單元測試框架!(Java+Unit)你真的沒有用過嗎?與之類似的TestNG,同樣是一個單元測試框架,你可能也經常會用到。

單元測試是什麼?通常來講,單元測試也叫白盒測試,與黑盒測試不同,白盒測試需要看代碼。

單元測試的內容是測試一個類內部的方法是否正確,返回值是否與預期值一致,如果返回值與預期值不符,那麼使用Junit單元測試框架的時候就會報錯,紅色出錯信息。

從狹義上來說單元測試是指一個函數、方法的功能測試驗證,侷限於一個class內部,以function爲單位;

從廣義上來說,任何一個project內部的功能都可以看做一個獨立於其他部分的獨立單元。從這個角度來講單元測試無處不在。

從開發的角度來講往往單元測試是開發來做的,也就是狹義上的單元測試,從大家目前的共識來說,也是這樣的,因爲這些部分是開發工作中的一部分。

單元測試框架Junit如何去用?我們使用的IDE是Eclipse。

首先要配置JDK,安裝Eclipse,一般Eclipse中都默認安裝了Junt4.

環境配置完成,Junit也配置好之後,開始Junit單元測試框架的第一步。

因爲是單元測試,so 我們要有驗證的東西。假設驗證一個add方法。

class AddTest{

       public int add (int a , int b){

                  return a+b;

              }

   }

在這個類裏我們寫了一個add方法,傳入int類型的兩個值a和b,返回a+b。

如果沒有其他錯誤,那麼我們這個簡單的加法方法能夠完成對int類型的數值的自動加法操作。

下面就是Junit登場的時候了。

首先我們要再編寫一個類。TestAdd類,在這個類裏進行測試。

class TestAdd{

}

在這個類裏我們要導入要使用的Junit的jar包,我們使用任何一個java的外部工具都要導入這個工具的jar包。

import Junit.Test;

inport Junit.Assert;

一個是Junit提供的測試包,一個是Junit的斷言包。


然後引入我們要測試的類

AddTest at = new AddTest();


這些工作做完後要開始編寫測試類了:

注意我們要讓Junit幫助我們完成單元測試的話必須在測試類上方添加@Test的註解,只有這樣Junit纔會測試這個類


 @Test
 public void testAdd() {
        int d = c.add(1,2);
        Assert.assertEquals(3, d);
    }

到這裏就大功告成了。

這裏調用了一個Junit類庫中的Assert類的方法,判斷預期結果與實際結果是否一樣。

綠色證明我們的方法是對的。

測試一下如果我們的方法是錯誤的會怎麼樣。

把return a+b 變爲 a*b;

結果會怎麼樣?

紅色錯誤,點擊左下角的錯誤信息,可以定位到錯誤的位置。可以看到執行到我們編寫的斷言方法時出現了錯誤。

結果雖然錯誤,但是與我們的預期一致。

使用Junit可以方便我們定位錯誤,在開發中常常使用Junit搭配debug調試程序,更快的找到程序出錯的地方。

在Selenium自動化測試階段,Junit的使用頻率很高。

當然也可以使用Log4j工具生成日誌幫助我們調試程序,但這不是我們單元測試的內容了。



發佈了104 篇原創文章 · 獲贊 16 · 訪問量 12萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章