上述配置中,本文將testCompile寫成androidTest,并且常見的Android工程的單元測試目錄名稱有test也有androidTest,這兩種寫法并沒有功能上的差別,只是Android單元測試Test Artifact不同而已。Test Artifact如圖3所示:
圖3 Test Artifact
在Gradle插件中,這兩種Artifact執行的Task還是有些區別的,但是并不影響單元測試的寫法與效果。雖然可以主動配置單元測試的項目路徑,本文依舊建議采用與Test Artifact對應的項目路徑和配置寫法。
Mock配置
如果要測試的目標對象依賴關系較多,需要解除依賴關系,以免測試用例過于復雜,用Robolectric的Shadow是個辦法,但是推薦更加簡單的Mock框架,比如Mockito,該框架可以模擬出對象來,而且本身提供了一些驗證函數執行的功能。Mockito配置如下:
原文轉自:http://tech.meituan.com/Android_unit_test.html