要在android中進行單元測試,主要分如下兩步:
1.寫一個測試類繼承自android.test.AndroidTestCase
2.在AndroidManifest.xml文件中進行配置
步驟1代碼:
package com.mmqzlj.test;
import com.mmqzlj.utils.DownloadText;
import android.test.AndroidTestCase;
public
class DownloadTextTest
extends AndroidTestCase {
public
void testDownload(){
DownloadText.test();
}
@Override
protected
void setUp()
throws Exception {
// TODO Auto-generated method stub
super.setUp();
}
@Override
protected
void tearDown()
throws Exception {
// TODO Auto-generated method stub
super.tearDown();
}
@Override
public
void testAndroidTestCaseSetupProperly() {
// TODO Auto-generated method stub
super.testAndroidTestCaseSetupProperly();
}
}
setUp() ,tearDown(),testAndroidTestCaseSetupProperly() 這3個方法都是覆寫父類的。setUp()設置測試前須要執行的內容,好比創建一個鏈接等,tearDown()是在測試執行後須要進行的動做,好比關閉鏈接等。testAndroidTestCaseSetupProperly()主要用於檢驗測試所用參數。若是不須要這三個方法也能夠不覆寫。
步驟2代碼:
<?
xml
version
="1.0"
encoding
="utf-8"
?>
<
manifest
xmlns:android
="http://schemas.android.com/apk/res/android"
package
="com.mmqzlj.activity"
android:versionCode
="1"
android:versionName
="1.0"
>
<
application
android:icon
="@drawable/icon"
android:label
="@string/app_name"
>
<
uses-library
android:name
="android.test.runner"
>
</
uses-library
>
<
activity
android:name
=".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
>
<
uses-permission
android:name
="android.permission.INTERNET"
/>
<
instrumentation
android:name
="android.test.InstrumentationTestRunner"
android:targetPackage
="com.mmqzlj.activity"
>
</
instrumentation
>
</
manifest
>
寫好AndroidTestcase,而後就是在AndroidManifest.xml增長兩句話。一是在
application 節點下增長
<
uses-library
android:name
="android.test.runner"
>
</
uses-library
>。二是增長
<
instrumentation
android:name
="android.test.InstrumentationTestRunner"
android:targetPackage
="com.mmqzlj.activity"
>
</
instrumentation
>
你們可能注意到了,我這裏的DownloadTextTest是在com.mmqzlj.test這個package下面,爲什麼我寫成
com.mmqzlj.activity。 答案是寫成com.mmqzlj.test執行時會報找不到com.mmqzlj.test包錯,估計跟xml最頂部配置的package包有關係。總之寫成
com.mmqzlj.activity能順利找到com.mmqzlj.test.DownloadTextTest而且執行以test開頭的方法就是了。至於緣由,請有識之士告知。 好了,配置完畢以後,在eclipse中右鍵run as ->Android Junit Test就能夠了。