亚洲好骚综合-亚洲黄色录像-亚洲黄色网址-亚洲黄色网址大全-99久久99久久-99久久99久久精品国产

您的位置:軟件測試 > 開源軟件測試 > 開源單元測試工具 > junit
JUnit4概述(一)
作者:網絡轉載 發布時間:[ 2013/12/9 10:30:24 ] 推薦標簽:

我們可以看到,采用Annotation的JUnit已經不會霸道的要求你必須繼承自TestCase了,而且測試方法也不必以test開頭了,只要以@Test元數據來描述即可。
從上面的例子可以看到在JUnit 4中還引入了一些其他的元數據,下面一一介紹:
@Before:
使用了該元數據的方法在每個測試方法執行之前都要執行一次。

@After:
使用了該元數據的方法在每個測試方法執行之后要執行一次。

注意:@Before和@After標示的方法只能各有一個。這個相當于取代了JUnit以前版本中的setUp和tearDown方法,當然你還可以繼續叫這個名字,不過JUnit不會霸道的要求你這么做了。

@Test(expected=*.class)
在JUnit4.0之前,對錯誤的測試,我們只能通過fail來產生一個錯誤,并在try塊里面assertTrue(true)來測試。現在,通過@Test元數據中的expected屬性。expected屬性的值是一個異常的類型

@Test(timeout=xxx):
該元數據傳入了一個時間(毫秒)給測試方法,
如果測試方法在制定的時間之內沒有運行完,則測試也失敗。

@ignore:
該元數據標記的測試方法在測試中會被忽略。當測試的方法還沒有實現,或者測試的方法已經過時,或者在某種條件下才能測試該方法(比如需要一個數據庫聯接,而在本地測試的時候,數據庫并沒有連接),那么使用該標簽來標示這個方法。同時,你可以為該標簽傳遞一個String的參數,來表明為什么會忽略這個測試方法。比如:@lgnore(“該方法還沒有實現”),在執行的時候,僅會報告該方法沒有實現,而不會運行測試方法。


 

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

 

我們在編寫大型程序的時候,需要寫成千上萬個方法或函數,這些函數的功能可能很強大,但我們在程序中只用到該函數的一小部分功能,并且經過調試可以確定,這一小部分功能是正確的。但是,我們同時應該確保每一個函數都完全正確,因為如果我們今后如果對程序進行擴展,用到了某個函數的其他功能,而這個功能有bug的話,那是一件非常郁悶的事情。所以說,每編寫完一個函數之后,都應該對這個函數的方方面面進行測試,這樣的測試我們稱之為單元測試。傳統的編程方式,進行單元測試是一件很麻煩的事情,你要重新寫另外一個程序,在該程序中調用你需要測試的方法,并且仔細觀察運行結果,看看是否有錯。正因為如此麻煩,所以程序員們編寫單元測試的熱情不是很高。于是有一個牛人推出了單元測試包,大大簡化了進行單元測試所要做的工作,這是JUnit4。本文簡要介紹一下在Eclipse3.2中使用JUnit4進行單元測試的方法。

 

首先,我們來一個傻瓜式速成教程,不要問為什么,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;

    }

}

上一頁12下一頁
軟件測試工具 | 聯系我們 | 投訴建議 | 誠聘英才 | 申請使用列表 | 網站地圖
滬ICP備07036474 2003-2017 版權所有 上海澤眾軟件科技有限公司 Shanghai ZeZhong Software Co.,Ltd
主站蜘蛛池模板: 天天干天天日天天射天天操毛片 | 欧美日韩成人 | 国产免费不卡 | 天天操国产| 色综合综合在线 | 亚洲国产欧美一区 | 成人羞羞视频免费 | 成人午夜看片 | 大美香蕉伊在看欧美 | 亚洲性色永久网址 | 香蕉污视频在线观看 | 欧美亚洲另类一区中文字幕 | 日本高清无吗 | 日韩亚洲国产激情在线观看 | 成人深夜福利在线播放不卡 | 午夜在线观看网站 | 日本一区二区三区不卡在线视频 | 在线观看www | 亚洲人成网站观看在线观看 | 成年人在线免费观看网站 | 国内精品区一区二区三 | 成 人国产在线观看高清不卡 | 亚洲天堂三级 | 欧美性极品xxxxx | 怡红院在线视频观看 | 成人久久18免费网站 | 久久er国产精品免费观看2 | 欧美日韩精品一区二区三区不卡 | 成人短视频在线免费观看 | 欧美亚洲高清日韩成人 | 啊啊啊毛片 | 亚洲国产福利精品一区二区 | 波多野结衣视频在线观看 | 色图欧美 | 天天插天天操天天射 | 中文字幕日韩一区二区三区不卡 | 国产手机看片 | 国产美女高清一级a毛片 | 清清草视频 | 亚洲天堂v | 在线观看亚洲精品国产 |