一、创建普通Android项目

 

二、在AndroidManifest.xml添加两个配置

 
  
  1. <?xml version="1.0" encoding="utf-8"?> 
  2. <manifest xmlns:android="http://schemas.android.com/apk/res/android" 
  3.  package="cn.xy.app" android:versionCode="1" android:versionName="1.0"> 
  4.  <application android:icon="@drawable/icon" android:label="@string/app_name"> 
  5.  
  6.   <!-- 引入单元测试依赖库 --> 
  7.   <uses-library android:name="android.test.runner" /> 
  8.  
  9.   <activity android:name=".MainActivity" android:label="@string/app_name"> 
  10.    <intent-filter> 
  11.     <action android:name="android.intent.action.MAIN" /> 
  12.     <category android:name="android.intent.category.LAUNCHER" /> 
  13.    </intent-filter> 
  14.   </activity> 
  15.  </application> 
  16.  <uses-sdk android:minSdkVersion="8" /> 
  17.  
  18.  <!-- 配置单元测试框架启动装置 --> 
  19.  <!-- android:targetPackage理解为测试项目部署在哪个Activity,而不是测试类所在包 --> 
  20.  <instrumentation android:name="android.test.InstrumentationTestRunner" 
  21.   android:targetPackage="cn.xy.app" android:label="xy_test" /> 
  22. </manifest>   
  23.  

<uses-library android:name="android.test.runner" />

引入测试相关类库

<instrumentation android:name="android.test.InstrumentationTestRunner"android:targetPackage="cn.xy.app" android:label="xy_test" />

配置单元测试框架启动装置

 

三、编写测试代码

 

 
  
  1. package cn.xy.test;  
  2.  
  3. import junit.framework.Assert;  
  4. import android.test.AndroidTestCase;  
  5. import cn.xy.service.PersonService;  
  6.  
  7. public class TestClass extends AndroidTestCase  
  8. {  
  9.  public void testSave() throws Exception  
  10.  {  
  11.   PersonService ps = new PersonService();  
  12.   ps.save();  
  13.  }  
  14.  
  15.  public void testGetPerson() throws Exception  
  16.  {  
  17.   PersonService ps = new PersonService();  
  18.   String name = ps.getPersonName();  
  19.   Assert.assertEquals("xy", name);  
  20.  }  
  21. }  
  22.  

测试类要继承AndroidTestCase类,测试方法要以test开头。

注意到该测试类放在cn.xy.test包下,而不是cn.xy.app下,并不影响,印证了android:targetPackage理解为测试项目部署在哪个Activity,而不是测试类所在包。

 

四、运行

直接将鼠标放在方法上邮寄Run AS——>Android Junit Test,会被部署到手机上作为一个Activity运行,方法运行的结果仍然以红条或者绿条显示,很以前纯Junit一样。

 

五、总结

这是一种方式,还可以直接建立Android Test Project。