之前的同一系列文章Android开发中的单元测试-初级教程(01)、Android开发中的单元测试-初级教程(02)讲述了Android中使用JUnit实现单元测试的例子,那么我们现在需要通过回顾知识点来理解我们的例子(注意,这里相当多的概念引用到了百度百科当中的描述):
简单的说,单元测试是为了测试我们的一个class是否有错误的一种辅助手段,我们通过编写单元测试中的每一个Test Case来检查我们的每一个method。为了不影响测试类,一般我们通过建立另一个Test Class来检测我们的被测试类。
简单的说,JUnit是一个测试框架,这里的目的主要是为了帮助我们进行单元测试。
/** * */ package com.freesoft.demo.utils; import android.test.AndroidTestCase; import android.util.Log; /** * @author Sandy * */ public class MathUtilTest extends AndroidTestCase { private static MathUtil mu = new MathUtil(); private static String TAG = "MathUtilTest"; /* (non-Javadoc) * @see android.test.AndroidTestCase#setUp() */ protected void setUp() throws Exception { super.setUp(); Log.v(TAG, "setUp"); } /* (non-Javadoc) * @see android.test.AndroidTestCase#tearDown() */ protected void tearDown() throws Exception { super.tearDown(); Log.v(TAG, "tearDown"); } /** * Test method for {@link com.freesoft.demo.utils.MathUtil#add(int, int)}. */ public void testAdd() { int result = mu.add(2, 1); assertEquals(3, result); } /** * Test method for {@link com.freesoft.demo.utils.MathUtil#sub(int, int)}. */ public void testSub() { int result = mu.sub(2, 1); assertEquals(1, result); } /** * Test method for {@link com.freesoft.demo.utils.MathUtil#mul(int, int)}. */ public void testMul() { int result = mu.mul(2, 1); assertEquals(2, result); } /** * Test method for {@link com.freesoft.demo.utils.MathUtil#div(int, int)}. */ public void testDiv() { int result = mu.div(2, 1); assertEquals(2, result); } /** * Test method for {@link com.freesoft.demo.utils.MathUtil#div(int, int)}. */ public void testDivByZero() { try { int result = mu.div(2, 0); assertEquals(2, result); } catch (ArithmeticException e) { assertTrue(true); } } /** * Test method for {@link com.freesoft.demo.utils.MathUtil#mod(int, int)}. */ public void testMod() { int result = mu.mod(2, 1); assertEquals(0, result); } }