2017年2月18日 星期六

Android-AndroidStudio 單元測試__JUnit

大家完成獨一無二的行動裝置方向後
想必針對某功能或某動作持續測試
以避免錯誤的發生

但是持續手動測試真的很沒有效率
但將測試程式寫至主程式內
不僅影響開發測試速度
如果是大量的測試那更加讓費時間
這時我們就會拉出獨立測試環境
讓他自己執行相關程式
我們專注於自己的開發
最後只需等待測試結果就可以了

說到這裡
我們先簡單說明一下此章節目的
1 . 如何使用 AndroidStudio 進行測試單元
2 . 介紹 AndroidStudio 測試單元
3 . AndroidStudio 測試的項目

1 . 如何使用 AndroidStudio 進行測試單元
首先我們要先在 gradle 匯入基本套件














2 . 介紹 AndroidStudio 測試單元
AndroidStudio 測試單元有分別:
1 ) 一般 Java 測試:也就是 Junit,基本上和 Android UI 操作無關。
2 ) Android 流程操作:顧名思義,直接操控 App 執行對應的操作。

1 ) 一般 Java 測試
首先先在 src 底下添加我們要測試的 Class














紅色區塊:執行步驟。
橘色區塊:執行結果。綠色正常,紅色有問題。
黃色區塊:執行內容。














最主要是用註記來判斷要執行的動作,常用註記如下:
@BeforeClass:方法首先被執行,只執行一次。
@AfterClass:方法最後被執行,只執行一次。
@Before:每執行 Test 前執行一次。
@After:每執行 Test 後執行一次。
@Test:測試的功能內容。
@BeforeClass/@AfterClass 都要皆為 static。

測試程式碼
package com.example.brian.helloandroid;

import org.junit.After;
import org.junit.AfterClass;
import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.Test;

public class ExampleUnitTest {

    @BeforeClass
    public static void testBeforeClass() throws Exception {
        System.out.println("testBeforeClass");
    }

    @Before
    public void testBefore() throws Exception {
        System.out.println("testBefore");
    }

    @Test
    public void testCase() {
        System.out.println("--------");
        System.out.println("testCase");
        System.out.println("--------");
    }

    @After
    public void testAfter() throws Exception {
        System.out.println("testAfter");
    }

    @AfterClass
    public static void testAfterClass() throws Exception {
        System.out.println("testAfterClass");
    }

}

結果如下:
testBeforeClass
testBefore
--------
testCase
--------
testAfter
testAfterClass

Process finished with exit code 0









參考資料:Android Studio单元测试入门
參考資料:Android 单元测试: 首先,从是什么开始
參考資料:Activity 测试系列教程

沒有留言:

張貼留言