標籤:
目前google是推薦使用AndroidJUnitRunner來進行單元測試的。
如果想使用InstrumentationTestRunner進行單元測試,推薦下面的一篇文章:
http://blog.csdn.net/zhaokaiqiang1992/article/details/45332513
使用AndroidJUnitRunner進行測試的時候,需要做在build.gradle裡面添加如下代碼:
defaultConfig { // ...... testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" }
dependencies { // ...... androidTestCompile 'com.android.support.test:runner:0.3'}
這句話testInstrumentationRunner表明要使用AndroidJUnitRunner進行單元測試,如果這句話沒有寫很可能引起如下錯誤:
junit.framework.AssertionFailedError: No tests found in andriodjunit.robot.com.andriodjunitrunner.CalcTest
而androidTestCompile ‘com.android.support.test:runner:0.3‘表明的是引用相關的庫,當沒有添加這個話的時候,我們的External Libraries
加入了之後,
從這裡我們可以看到由於添加runner:0.3之後,會自動添加juint庫無需我們再添加juint庫了。
這些基本工作完成了之後,開始我們的單元測試的代碼了。
在src/main/java/xxx相對應的包裡面添加檔案:
public class Calc { public int sum(int a, int b) { return a + b; } public int sub(int a, int b) { return a - b; }}
選中此類,點擊右鍵,
下一步:
產生如下代碼:
public class CalcTest { @Test public void testSum() throws Exception { } @Test public void testSub() throws Exception { }}然後就是簡單的使用JUnit4進行單元測試了,先添加測試的代碼:
public class CalcTest { @Test public void testSum() throws Exception { Calc calc = new Calc(); assertEquals(6, calc.sum(2, 4)); } @Test public void testSub() throws Exception { Calc calc = new Calc(); assertEquals(9, calc.sub(2, 4)); }}
選擇CalcTest類,點擊右鍵:
運行結果
這樣子就完成了使用AndroidJUnitRunner進行簡單的單元測試了,如果需要對介面(Activity)進行單元測試,需要引入espresso了。
這裡就不再說明了,具體請參考上一篇文章。
著作權聲明:本文為博主原創文章,未經博主允許不得轉載。
Android Studio使用AndroidJUnitRunner進行單元測試