1、 單元測試概述ide
1.1 什麼是單元測試函數
單元測試,就是針對代碼單元的獨立測試。爲何須要單元測試呢?這是代碼的基本特性決定了的。代碼有一個基本特性,就是對數據分類處理。單元測試
代碼一般會有不少的斷定。一個斷定,就是一次分類。嵌套的斷定,會使分類次數的翻倍。測試
若是咱們在寫代碼的時候,有一個分類漏掉了,就會產生一個Bug;若是一個分類,雖然寫了代碼,可是處理不正確,也會產生一個Bug。一個函數要沒有錯誤,必須作到兩點:1,對數據的分類必須完整;2,每個分類的處理必須正確。作到了這兩點,就能夠說,代碼的功能邏輯是正確的。調試
那麼,如何檢測代碼的功能邏輯是否正確呢?it
調試,是臨時的,且不完整的,例如,一個函數有十種輸入,調試能覆蓋五六種就不錯了。而系統測試,並不針對某個具體的函數,不關注某個函數的功能邏輯是否正確。class
要檢測某個函數的功能邏輯,就必需要依照分類列出數據,檢測代碼是否對每個分類都作了處理,並且每個分類的處理是否正確。軟件
——這就是單元測試。程序
1.2 單元測試的基本方法方法
由上面的分析能夠看出,單元測試的基本方法就是:依數據的分類列出輸入,執行被測試程序,而後,判斷輸出是否符合預期。
單元測試能達到什麼樣的效果呢?那就是:不管別人怎麼樣,我老是對的!
這裏的「別人」,是指關聯代碼。「我」,是指當前正在編寫或測試的代碼。單元測試要作到的是,不管關聯代碼是否有錯,都要保證我是對的。具體來講,我要考慮關聯代碼會產生什麼樣的數據,這些數據要如何分類處理,只要個人分類和處理是正確的,那麼,不管別人怎麼樣,我老是對的。