eclipes中的单元测试
方法一
1.定义一个类继承AndroidTestCase
(1)创建一个Android项目,在项目里添加一个java文件
package com.example.test;
public class Calc {
/**
* 定义两个数相加相的方法
*/
public int add(int x,int y){
return x+y;
}
}
(2)再添加一个java文件继承AndroidTestCase
package com.example.test;
import android.test.AndroidTestCase;
public class Test extends AndroidTestCase {
//写一个测试加法的方法
public void testAdd(){
//创建一个Calc对象
Calc calc=new Calc();
//接收add返回的结果
int result=calc.add(6,4);
//调用assertEqual方法进行断言
assertEquals(10, result);//前面一个参数为期望值,后面一个参数为真实值
}
}
2.在 AndroidMenifest.xml文件配置user-library和instrumentaion
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.test"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk
android:minSdkVersion="15"
android:targetSdkVersion="19" />
<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="com.example.test.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 targetPackage写当前所在的包名 -->
<instrumentation android:name="android.test.InstrumentationTestRunner"
android:targetPackage="com.example.test"/>
</manifest>
进行测试:
<img src="https://img-blog.csdn.net/20160319131815971?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />
方法二
直接创建一个测试工程,在测试工程中会直接配置好清单文件
在File->new->other->android->android->android Test Project下创建即可。
android studio中的单元测试
android studio在生成项目的时候已经生成好了一个专门放单元测试类的包,一般会标识androidTes,在该包下创建一个单元测试类继承AndroidTestCase
public class TestAdd extends AndroidTestCase{
public void testAdd(){//注意测试方法一定要以test开头
int x=3;
int y=5;
assertEquals(x+y,5);
}
}
然后在testAdd上右键选择create 'testAdd()',之后就可以直接运行了,在android studio中不必配置Manifest.xml
运行后可以看到测试失败,并有这样一条log:
junit.framework.AssertionFailedError: expected:<8> but was:<5>
将assertEquals(x+y,5)改成assertEquals(x+y,8)重新测试就能成功了。