需求:写一个简单的utils工具类,实现一个静态方法返回两个整数的和,然后用安卓下的JUnit单元测试来测试这个方法
安卓下的JUnit测试跟java下的Junit测试有一些不一样,java下的JUnit测试很多时候是直接写@Test来实现,但是安卓下这样是不行的。
方法如下:
1.首先写好要测试的类及其方法
2.新建一个测试类,但是这个测试类需要继承AndroidTestCase类,否则JUnit无法进行
3.在测试类中写好自己的测试方法,并且用安卓下的断言,一般是assertEquals(期望值,实际值);这种格式来判断方法的返回值是否正确
4.最后需要在清单文件中添加两项,一项在请单体中添加instrument标签,另一项是在application标签体中添加uses-library标签
现假设写了一个MathUtils类,里面有一个静态方法是increment(int x,int y) ,方法返回x+y
那么JUnit类大致写法如下:
package com.alexchen.androidjunit.test;
import com.alexchen.androidjunit.utils.MathUtils;
import android.test.AndroidTestCase;
public class Test extends AndroidTestCase{
public void test(){
// System.out.println("test is calling");
int a = MathUtils.increment(10, 9);
//断言,断定某一个对象就是某一个值
assertEquals(19, a);
}
}
<instrumentation
android:name="android.test.InstrumentationTestRunner"
android:targetPackage="com.alexchen.androidjunit" >
</instrumentation>
<application>
<uses-library android:name="android.test.runner"/>
</application>