91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

[Android學習十一]Android開發單元測試

發布時間:2020-07-31 11:15:06 來源:網絡 閱讀:1663 作者:secondriver 欄目:移動開發


       網上關于Android單元測試的文字帖子不勝枚舉,看完之后能解決問題是好事,不能解決問題那就是浪費時間和經歷。大多數文章來自于這篇文章:http://rexstjohn.com/unit-testing-with-android-studio/


       自從投入到Android Studio IDE之后基本上就賴著不走了。這里僅討論AS(Android Studio)中Android單元測試。
 
 
      開發一個Android應用單元測試這種程序員的自我修養和基本道德測試是必不可少的。其單元測試分為兩塊,一塊是依賴Android API(平臺)的單元測試,一塊是不依賴Android API的單元測試。
 
   
     1.不依賴AndroidAPI的單元測試
     
        這一塊就和通常開發JavaSE,EE應用的單元測試一樣,測試框架更加需要自行選擇即可。在通過AS創建Android應用模塊時,默認在build.gradle文件中添加了測試庫junit依賴。


     如果在AS中使用不依賴AndroidAPI的單元測試,一圖頂萬言:


[Android學習十一]Android開發單元測試[Android學習十一]Android開發單元測試

               

                                 圖一                                                                                   圖二


    如圖二所示,在Build Variants的Test Artifact設置為Unit tests之后,test源碼目錄呈現出IDEA風格的綠色目錄。 這是就可以運行測試類或測試套件,比較容易就不多解釋了。


   2. 依賴Android API的單元測試


      2.1 AS中配置Android單元測試


       Android基于junit3框架提供了Android的單元測試框架,要在Android中使用單元測試就需要依賴android.test包下的具體類。下面是AS中配置Android單元測試的方法:


   [Android學習十一]Android開發單元測試


                                                                                               圖三   

  2.2 Android單元測試示例


    2.2.1 一個單元測試類:

   

package secondriver.heathfood.test;

import android.test.InstrumentationTestCase;

import com.orhanobut.logger.Logger;

import secondriver.heathfood.App;
import secondriver.heathfood.logic.TianGou;
import secondriver.heathfood.pojo.FoodCla***esult;
import secondriver.heathfood.pojo.FoodDetail;
import secondriver.heathfood.pojo.FoodDetailResult;

/**
 * Author : secondriver
 * Created : 2016/1/20
 */
public class TestTianGou extends InstrumentationTestCase {

    public TianGou tianGou;

    public void setUp() {
        tianGou = new TianGou(App.restTemplate());
    }

    public void test_queryFoodClassByParentId1() {
        FoodCla***esult result = tianGou.queryFoodClassByParentId(0);
        assertTrue(result.isStatus());
    }
}

 


  

    關于Android的單元測試基類參見:

   http://www.oschina.net/question/54100_27061?fromerr=NydwIvQR 。

   http://www.uml.org.cn/mobiledev/201306074.asp

   

   注意:Android單元測試的測試類寫法遵循的是Junit3.

 

   2.2.2 執行單元測試

   

   在執行單元測試之前,講Build Variant的Test Artifact設置為圖一所示值。  


   執行Android Tester之后,輸出截圖:


  [Android學習十一]Android開發單元測試

                                  圖四

  從截圖上得知未授網絡訪問權權限。


  2.2.3 AS中Android單元測試控制臺

[Android學習十一]Android開發單元測試

                                      圖五



   在網上找關于Android單元測試的案例時,比較雜亂,遂作此文予以整理,Android單元測試如何去做當是另外的主題,需要參考android.test包中提供的具體類。



 文中的android測試類的包直接創建在了main代碼目錄下,比較好的方式如下Android測試代碼目錄結構圖:


 [Android學習十一]Android開發單元測試

               圖 六

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

乐都县| 蓬莱市| 丰宁| 汝州市| 九龙城区| 三门县| 巴马| 和平区| 永宁县| 仁布县| 壤塘县| 电白县| 绥芬河市| 永昌县| 北海市| 抚顺市| 仲巴县| 治县。| 德钦县| 巴彦县| 黄石市| 延长县| 同德县| 庆城县| 大名县| 盐城市| 湘乡市| 会东县| 修文县| 卓尼县| 江达县| 惠水县| 仪陇县| 新津县| 桑日县| 醴陵市| 汪清县| 赤城县| 柯坪县| 盐城市| 新疆|