編輯:Android開發實例
本文說明一下在Android開發中,如何使用JUnit進行單元測試。首先來了解一下什麼是JUnit,JUnit測試是白盒測試,即主要是程序員自己對開發的方法進行功能性測試。JUnit是一套框架,Android中也沿用了這一套框架。
JUnit
在Android中使用JUnit測試大致分如下幾個步驟:
下面就上面幾個步驟,詳細講解一下,新建一個Android項目,在AndroidManifest.xml中,添加一個Instrumentation:
指定Instrumentation的name與TargetPackage:
在<application.../>節點中增加<uses-library android:name="android.test.runner" />
完成後AndroidManifest.xml代碼如下:
- <?xml version="1.0" encoding="utf-8"?>
- <manifest xmlns:android="http://schemas.android.com/apk/res/android"
- package="com.example.junittestdemo"
- android:versionCode="1"
- android:versionName="1.0" >
- <uses-sdk
- android:minSdkVersion="8"
- android:targetSdkVersion="17" />
- <instrumentation
- android:name="android.test.InstrumentationTestRunner"
- android:targetPackage="com.example.junittestdemo" >
- </instrumentation>
- <application
- android:allowBackup="true"
- android:icon="@drawable/ic_launcher"
- android:label="@string/app_name"
- android:theme="@style/AppTheme" >
- <uses-library android:name="android.test.runner" />
- <activity
- android:name="com.example.junittestdemo.MainActivity"
- android:label="@string/app_name" >
- <intent-filter>
- <action android:name="android.intent.action.MAIN" />
- <category android:name="android.intent.category.LAUNCHER" />
- </intent-filter>
- </activity>
- </application>
- </manifest>
編寫一個簡單的進度百分比計算方法:
- package com.example.service;
- public class ProgressService {
- public ProgressService() {
- }
- public Integer getCurrentProgerss(double current, double max) {
- Integer i=(int)((current / max) * 100) ;
- return i;
- }
- }
編寫一個測試類,這個類需要繼承AndroidTestCase,針對百分比方法進行測試:
- package com.example.junit;
- import android.test.AndroidTestCase;
- import android.util.Log;
- import com.example.service.ProgressService;
- public class ProgressServiceJUnit extends AndroidTestCase {
- private final String TAG="main";
- public ProgressServiceJUnit() {
- // TODO Auto-generated constructor stub
- }
- public void getCurrentProgerssTest(){
- ProgressService progressService=new ProgressService();
- Integer pro=progressService.getCurrentProgerss(20, 70);
- Log.i(TAG, pro.toString());
- }
- }
左鍵getCurrentProgerssTest()方法,選中Android JUnit Test,如果需要調試,可以選擇Debug As下的Android JUnit Test:
當執行成功後,會顯示綠色,如果是其他顏色,則為出錯:
可以在LogCat日志中看到測試結果:
源碼下載
在Android的應用開發中,我們會用到各種代碼調試;其實在Android的開發之後,我們可能會碰到一些隨機的問題,如cpu過高,內存洩露等,我們無法簡單的進行代
今天模仿安卓QQ空間,效果如下: 打開程序的啟動畫面和導航頁面我就不做了,大家可以模仿微信的那個做一下,很簡單。這次主要做一下主頁面的實
1.需求 無論是在.net還是java平台,合理的分層架構是最普遍的模塊化思路之一。 dl
JSON代表JavaScript對象符號。它是一個獨立的數據交換格式,是XML的最佳替代品。本章介紹了如何解析JSON文件,並從中提取所需的信息。Android提供了四個