四、对应用进行单元测试

在实际开发中,开发android软件的过程需要不断地进行测试。使用Junit测试框架,是正规Android开发的必用技术,在Junit中可以得到组件,可以模拟发送事件和检测程序处理的正确性。

      

第一步:首先在AndroidManifest.xml中加入下面红色代码:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
      package="com.ljq.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" />
        <activity android:name=".FileActivity"
                  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-sdk android:minSdkVersion="7" />
    <instrumentation android:name="android.test.InstrumentationTestRunner"
            android:targetPackage="com.ljq.activity" android:label="Tests for My App" />
</manifest>

上面targetPackage指定的包要和应用的package相同。

        

第二步:编写单元测试代码(选择要测试的方法,右键点击“Run As”--“Android Junit Test” ):

package com.ljq.service;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.io.OutputStream;

import android.content.Context;
import android.test.AndroidTestCase;
import android.util.Log;

/**
 * android测试
 *
 * @author jiqinlin
 *
 */
public class FileServiceTest extends AndroidTestCase {
    private final String TAG = "FileServiceTest";
    public void testSave() throws Exception{
        OutputStream outputStream = this.getContext().openFileOutput("ljq.txt", Context.MODE_PRIVATE);
        FileService.save(outputStream, "abc");

        Log.i(TAG, "保存成功");

    }

}

posted on 2011-05-11 15:08  Ruthless  阅读(1403)  评论(1编辑  收藏  举报