Android單元測試介紹
處于高速迭代開發中的Android項目往往需要除黑盒測試外更加可靠的質量保障,這正是單元測試的用武之地。單元測試周期性對項目進行函數級別的測試,在良好的覆蓋率下,能夠持續維護代碼邏輯,從而支持項目從容應對快速的版本更新。
單元測試是參與項目開發的工程師在項目代碼之外建立的白盒測試工程,用于執行項目中的目標函數并驗證其狀態或者結果,其中,單元指的是測試的最小模塊,通常指函數。如圖1所示的綠色文件夾即是單元測試工程。這些代碼能夠檢測目標代碼的正確性,打包時單元測試的代碼不會被編譯進入APK中。
圖1 單元測試工程位置
與Java單元測試相同,Android單元測試也是維護代碼邏輯的白盒工程,但由于Android運行環境的不同,Android單元測試的環境配置以及實施流程均有所不同。
Java單元測試
在傳統Java單元測試中,我們需要針對每個函數進行設計單元測試用例。如圖2便是一個典型的單元測試的用例。
圖2 單元測試示例
上述示例中,針對函數dosomething(Boolean param)的每個分支,我們都需要構造相應的參數并驗證結果。單元測試的目標函數主要有三種:
既沒有返回值,也沒有改變狀態,又沒有觸發行為的函數是不可測試的,在項目中不應該存在。當存在同時具備上述多種特性時,本文建議采用多個case來真對每一種特性逐一驗證,或者采用一個case,逐一執行目標函數并驗證其影響。
原文轉自:http://tech.meituan.com/Android_unit_test.html