2010年11月20日 星期六

Android、JUnit深入淺出(二)——JUnit例子分析

http://www.cnblogs.com/rockchip/articles/1746039.html

Android、JUnit深入淺出(二)——JUnit例子分析

在前一篇文章JUnit初步解析中,我們簡要了解了JUnit的主要功能:
管理測試用例;
定義測試代碼;
定義測試環境;
檢測測試結果;
結合主要功能,舉個簡單的例子分析如下:

源代碼:
public class SampleCalculator
{
public int add(int augend , int addend)
{return augend + addend ;}

public int subtration(int minuend , int subtrahend)

{ return minuend – subtrahend ;}

}

測試用例(TestCase):
import junit.framework.TestCase;
public class TestSample extends TestCase
{
private int a;
private int b;
private int r1,r2;
void setUp() /*開始測試當前用例–初始化測試環境*/
{
a = 50;
b = 20;
r1 = 70;
r2 = 30;
}

void tearDown()/*當期用例測試結束*/
{}

public void testAdd()/*測試SampleCalculator 類的Add函數*/
{
SampleCalculator calculator = new SampleCalculator();
int result = calculator.add(a , b);
assertEquals(r1 , result);/*檢測測試結果*/
}

public void testSubtration()/*測試SampleCalculator 類的Subtration函數*/
{
SampleCalculator calculator = new SampleCalculator();
int result = calculator.subtration(a , b);
assertEquals(r2 , result);/*檢測測試結果*/
}
}
以上TestSample測試用例中就對SampleCalculator進行了完整的單元測試,並對測試結果做了預期說明。

TestCase的管理
import junit.framework.Test;
import junit.framework.TestSuite;
public class TestAll
{
public static Test suite()
{
TestSuite suite = new TestSuite(”TestSuite Test”);
suite.addTestSuite(TestSample.class);
return suite;
}
}

以上就將TestSample增加到“TestSuite Test”中,將來在選擇測試用例的過程中只要選擇了TestSuite Test,TestSample就將加入當前測試中。 如果將來SampleCalculator增加了其他功能,只需要在TestSample增加相應的測試代碼。

最後需要說明的:對TestCase的管理,是完全界面化的,JUnit會自動產生UI界面,運行以上測試的例子,JUnit的界面如下:





可能還需要下載JUint packeage,最後送給大家一句話:大膽嘗試下,你會發現編程真的可以如此“美好”。

沒有留言:

張貼留言