Android(安卓)- JUnit Test(单元测试)
1.创建Android项目:Junit。
2.创建被测试的类:CalcService。包含被测试的方法:add(),代码如下:
package com.example.junit.service;
public class CalcService {
/*有业务类或者方法要放在单独的包下面
* 计算器相加的业务方法
* */
public int add(int x, int y){
return x+y;
}
/*
* java se 程序运行在java 虚拟机*/
/*直接右键运行是不能运行在java虚拟机上面*/
/*public static void main(String args[]){
System.out.println("hahahaa") ;
}*/
}
3.创建测试类:TestCalcService
Android测试类需要继承android.test.AndroidTestCase,代码如下
package com.example.test;
import com.example.junit.service.CalcService;
import android.test.AndroidTestCase;
public class TestCalcService extends AndroidTestCase {
/*写个类继承AndroidTestCase */
/*把异常抛给测试框架
* add方法的测试代码*/
public void testAdd() throws Exception{
CalcService service = new CalcService() ;
int result = service.add(3, 5) ;
assertEquals(8, result) ;
}
}
此时,如果不进行配置,则会报错,junit does not specify a android.test.InstrumentationTestRunner instrumentation or does not declare uses-library android.test.runner in its AndroidManifest.xml
4.配置AndroidManifest.xml文件
1) <uses-libraryandroid:name="android.test.runner" />
说明:与<activity>位置同级
2) <instrumentationandroid:targetPackage="com.android.junit"
android:name="android.test.InstrumentationTestRunner"
android:label="AndroidJUnit测试" /> /*此处label可以随便赋值*/
说明:与<application>标签同级,targetPackage属性与上面mainfest的package属性内容相同即可 -->
完整xml代码如下:
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.junit"
android:versionCode="1"
android:versionName="1.0" >
<!-- 指令集需要在manifest的节点下 -->
<instrumentation
android:name="android.test.InstrumentationTestRunner"
android:targetPackage="com.example.junit"/>
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="18" />
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<!-- 在application节点下创建uses-library,使用的函数库 -->
<uses-library android:name="android.test.runner"/>
<activity
android:name="com.example.junit.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>
</manifest>
或者在创建完整的application之后,再新建一个 Android Test Project,点击next,为测试项目命名,然后选择要测试的项目,一路next,finish
打开新建的项目之后,会发现,所有需要在Manifest.xml文件中添加的配置信息已经完全添加好了。
然后可以在这个项目中添加对应的测试类,进行测试!!!!
测试的话,如果实在adt中,可点击右侧outline中需要测试的方法,然后选择run as --> Android Junit Test ,如果没有错误,则Junit 条目会是绿色的,否则是红色的。。。
要进行Android的单元测试首先的配置指令集和用户库,下面是详细的配置步骤
打开AndroidManifest.xml文件,点击instrumentation选项
点选ADD后
点instrumentation选项,指令集就添加成功
name必须指定为android.test.InstrumentationTestRunner
Target Package为单元测试的包名
Lable随便指定
这样instrumentation就添加成功
添加uses-library
鼠标右键单击工程,选择Run As\Run configurations,在Android JUnit Test选项中选择工程,将会看到下面这个界面:
在Instrumentation runner后的列表框选项中,选中android.test.InstrmentationTestRunner。到此配置完毕
更多相关文章
- 加快Android(安卓)Stduio编译速度方法之一
- make: arm-eabi-gcc: Command not found 错误解决办法
- 踩坑实录 Android(安卓)Studio真机测试时 Error while Installin
- android 测试 monkeyrunner
- android在XML配置seekbar时最好不要设置progress的初始值
- 关于Ant编译Android中Ant学习研究
- Android(安卓)MediaCodec硬编兼容性测试方案
- 配置qt5.1 for android的环境
- Qt for android 开机自启动、开机黑屏处理