隨著開發(fā)項(xiàng)目的規(guī)模越來越大码邻,我們有必要在開發(fā)過程中對(duì)項(xiàng)目中的核心方法進(jìn)行單元測(cè)試优烧,以更快更好地定位出bug位置并解決問題照激。
假設(shè)筆者在 HttpUtils.java中 定義了一個(gè) doGet(String msg) 的網(wǎng)絡(luò)請(qǐng)求方法舌仍,下面需要在 Eclipse 測(cè)試其正確性恭取。
首先創(chuàng)建一個(gè)測(cè)試類 TestHttpUtils 泰偿,使其繼承 AndroidTestCase ,為了規(guī)范蜈垮,最好單獨(dú)建一個(gè)測(cè)試包如 test
package test;
import utils.HttpUtils;
import android.test.AndroidTestCase;
import android.util.Log;
public class TestHttpUtils extends AndroidTestCase {
public void testSendInfo() {
String res = HttpUtils.doGet("給我講個(gè)笑話");
Log.e("TAG", res);
res = HttpUtils.doGet("給我講個(gè)鬼故事");
Log.e("TAG", res);
res = HttpUtils.doGet("你好");
Log.e("TAG", res);
res = HttpUtils.doGet("你真美");
Log.e("TAG", res);
}
}
然后打開 AndroidMainfest.xml 耗跛,搭建如下測(cè)試環(huán)境:
在 application 中添加 <uses-library android:name="android.test.runner" />
<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=".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>
再添加 instrumentation ,注意android:targetPackage要和AndroidMainfest.xml 中的package="com.example.http" 保持一致
<instrumentation
android:name="android.test.InstrumentationTestRunner"
android:label="this is a test"
android:targetPackage="com.example.http" >
</instrumentation>
最后回到 TestHttpUtils.java,選中方法 testSendInfo()攒发,右鍵選擇 Run as调塌,選擇 Android JUnit Test 即可