在实际开发中,开发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.iaiai.activity" android:versionCode="1" android:versionName="1.0"> <uses-sdk android:minSdkVersion="8" /> <application android:icon="@drawable/icon" android:label="@string/app_name"> <!-- 添加测试 --> <uses-library android:name="android.test.runner" /> <!-- <activity android:name="com.iaiai.activity.MyList" android:label="@string/contact_title"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> --> </application> <!-- activity程序的包地址 --> <instrumentation android:name="android.test.InstrumentationTestRunner" android:targetPackage="com.iaiai.activity" android:label="Tests for My App" /> <!-- 读取联系人 --> <uses-permission android:name="android.permission.READ_CONTACTS" /> <!-- 写入联系人 --> <uses-permission android:name="android.permission.WRITE_CONTACTS" /> <!-- 在SD卡中创建文件与删除文件权限 --> <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" /> <!-- 往SD卡中写入数据权限 --> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <!-- 电话拨号 --> <uses-permission android:name="android.permission.CALL_PHONE" /></manifest>
这个文件要注意的地方是manifest的package属性,刚才就犯了一个错,改包名之后没有改这里,所以总会报错,一定要注意这里。
上面targetPackage指定的包要和应用的package相同。
编写单元测试代码Test.java类:
package com.iaiai.test;import android.test.AndroidTestCase;import android.util.Log;public class Test extends AndroidTestCase { private final String TAG = "Test"; public void testSave() throws Exception { Log.i(TAG, "测试....."); }}