Android 單元測試學習

Android 單元測試學習

由於完全沒用過android studio做過單元測試,一起學習:

基本說明

我用的是 android studio 2.2.3版本。如下圖是新生成的android應用目錄結構。
這裏寫圖片描述
main包是主要的代碼和資源文件
androidTest包是測試android運行環境的。
test包是測試單元模塊的

ExampleUnitTest類

ExampleUnitTest是android項目生成的時候自動產生的類 代碼如下:

import org.junit.Test;

import static org.junit.Assert.*;

/**
 * Example local unit test, which will execute on the development machine (host).
 *
 * @see <a href="http://d.android.com/tools/testing">Testing documentation</a>
 */
public class ExampleUnitTest {
    @Test
    public void addition_isCorrect() throws Exception {
        assertEquals(4, 2 + 2);
    }
}

addition_isCorrect 就是單元測試用例。
可以在方法裏面右鍵運行看看。
這裏寫圖片描述
然後再下面的狀態欄可以看到結果:
這裏寫圖片描述

結果顯示一個測試通過(1 test passed)

如果是失敗的話,也會顯示出來:
這裏寫圖片描述
會反饋給你預期值(Expected)和實際值(Actual)的差異。

在當前方法裏面運行單元測試,是不會影響其他單元測試的,所以如果我們要一次性測試多個單元的話,可以運行整個類的測試。
我在裏面增加了一個單元測試方法。記得寫@Test註解,否則ide不識別。
選中測試類名(ExampleUnitTest)。

這裏寫圖片描述

運行後可以查看結果
這裏寫圖片描述
右邊可以看出2 test done,1 failed,2個測試完成,一個失敗。
左邊可以看綠色圖標的方法是成功的,黃色感嘆號的是表示失敗的。

實際應用

然後我們再測試一個應用裏面的方法實踐一下。

這裏寫圖片描述

在應用activity裏面添加了一個方法 addTest()。
現在我們的目標是測試這個方法。
選擇這個方法,右鍵如下操作:
這裏寫圖片描述

然後選擇 Create New Test

這裏寫圖片描述

填寫測試類名,繼承名,所屬包,增加的方法
勾選了setUp/@Before
@Before 就表示在單元測試之前先執行這個方法。
@After 就表示在單元測試後執行,有些對象需要釋放,或者關閉操作。
然後下面選擇要測試的成員方法。 ok就行。

然後再在生成的測試類裏面填寫對應的方法和流程就行了。
這裏寫圖片描述

後面執行測試的步驟就和前面所述一樣了。

到此,單元測試基本學習好了。

謝謝查看。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章