[轉]在Eclipse中使用JUnit4進行單元測試(初級篇)

來源:互聯網
上載者:User

標籤:style   blog   http   color   io   使用   java   ar   for   

首先,我們來一個傻瓜式速成教程,不要問為什麼,Follow Me,先來體驗一下單元測試的快感!

首先建立一個項目叫JUnit_Test,我們編寫一個Calculator類,這是一個能夠簡單實現加減乘除、平方、開方的計算機類,然後對這些功能進行單元測試。這個類並不是很完美,我們故意保留了一些Bug用於示範,這些Bug在注釋中都有說明。該類代碼如下:

package andycpp;public class Calculator {    private static int result;    //靜態變數,用於儲存運行結果    public void add(int n)    {        result=result+n;    }        public void substract(int n)    {        result=result-1;        //Bug:正確的應該是result=result-n;    }        public void multiply(int n)    {        //此方法尚未寫好    }        public void divide(int n)    {        result=result/n;    }        public void square(int n)    {        result=n*n;    }        public void squareRoot(int n)    {        for(;;);    //Bug:死迴圈    }        public void clear()    {        result=0;  //將結果清零    }        public int getResult()    {        return result;    }}

 

第二步,將JUnit4單元測試包引入這個項目:在該項目上點右鍵,點“屬性”,

在彈出的屬性視窗中,首先在左邊選擇“Java Build Path”,然後到右上選擇“Libraries”標籤,之後在最右邊點擊“Add Library…”按鈕,如所示

然後在新彈出的對話方塊中選擇JUnit4並點擊確定,如所示,JUnit4軟體包就被包含進我們這個項目了。

 

第三步,產生JUnit測試架構:在Eclipse的Package Explorer中用右鍵點擊該類快顯功能表,選擇“New - JUnit Test Case”。如所示:

在彈出的對話方塊中,進行相應的選擇,如所示:

點擊“下一步”後,系統會自動列出你這個類中包含的方法,選擇你要進行測試的方法。此例中,我們僅對“加、減、乘、除”四個方法進行測試。如所示:

之後系統會自動產生一個新類CalculatorTest,裡麵包含一些空的測試案例。你只需要將這些測試案例稍作修改即可使用。

完整的CalculatorTest代碼如下:

package andycpp;import static org.junit.Assert.*;import org.junit.After;import org.junit.Before;import org.junit.Ignore;import org.junit.Test;import org.junit.internal.runners.TestClassRunner;import org.junit.runner.RunWith;@RunWith(TestClassRunner.class)public class CalculatorTest {    private static Calculator calculator=new Calculator();        @Before    public void setUp() throws Exception {        calculator.clear();    }    @After    public void tearDown() throws Exception {    }    @Test(timeout=1000)    public void testAdd() {        calculator.add(2);        calculator.add(3);        assertEquals(5, calculator.getResult());    }    @Test    public void testSubstract() {        calculator.add(10);        calculator.substract(2);        assertEquals(8,calculator.getResult());    }    @Ignore("Multiply() Not yet implemented")      @Test    public void testMultiply() {            }    @Test(expected =ArithmeticException.class)    public void testDivide() {        calculator.add(8);        calculator.divide(0);        assertEquals(4,calculator.getResult());    }}

 

第四步,運行測試代碼:按照上述代碼修改完畢後,我們在CalculatorTest類上點右鍵,選擇“Run As - JUnit Test”來運行我們的測試,如所示:

運行結果如下:

進度條是紅顏色表示發現錯誤,具體的測試結果在進度條上面有表示“共進行了4個測試,其中1個測試被忽略,一個測試失敗”.

至此,我們已經完整體驗了在Eclipse中使用JUnit的方法。

 

[轉]在Eclipse中使用JUnit4進行單元測試(初級篇)

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.