国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

JUnit測試框架簡介

開發 后端
JUnit是由 Erich Gamma 和 Kent Beck 編寫的一個回歸測試框架(regression testing framework)。

JUnit是由 Erich Gamma 和 Kent Beck 編寫的一個回歸測試框架(regression testing framework)。Junit測試是程序員測試,即所謂白盒測試,因為程序員知道被測試的軟件如何(How)完成功能和完成什么樣(What)的功能。Junit是一套框架,繼承TestCase類,就可以用Junit進行自動測試了。

junit特性:

JUnit是一個開放源代碼的Java測試框架,用于編寫和運行可重復的測試。他是用于單元測試框架體系xUnit的一個實例(用于java語言)。它包括以下特性:

1、用于測試期望結果的斷言(Assertion)

2、用于共享共同測試數據的測試工具

3、用于方便的組織和運行測試的測試套件

4、圖形和文本的測試運行器

junit優點:

另外junit是在極限編程和重構(refactor)中被極力推薦使用的工具,因為在實現自動單元測試的情況下可以大大的提高開發的效率,但是實際上編寫測試代碼也是需要耗費很多的時間和精力的,那么使用這個東東好處到底在哪里呢?筆者認為是這樣的:

1、對于極限編程而言

要求在編寫代碼之前先寫測試,這樣可以強制你在寫代碼之前好好的思考代碼(方法)的功能和邏輯,否則編寫的代碼很不穩定,那么你需要同時維護測試代碼和實際代碼,這個工作量就會大大增加。因此在極限編程中,基本過程是這樣的:構思-> 編寫測試代碼-> 編寫代碼-> 測試,而且編寫測試和編寫代碼都是增量式的,寫一點測一點,在編寫以后的代碼中如果發現問題可以較塊的追蹤到問題的原因,減小回歸錯誤的糾錯難度。

2、對于重構而言

其好處和極限編程中是類似的,因為重構也是要求改一點測一點,減少回歸錯誤造成的時間消耗。

3、對于非以上兩種情況

 

 

junit我們在開發的時候使用junit寫一些適當的測試也是有必要的,因為一般我們也是需要編寫測試的代碼的,可能原來不是使用的junit,如果使用junit,而且針對接口(方法)編寫測試代碼會減少以后的維護工作,例如以后對方法內部的修改(這個就是相當于重構的工作了)。另外就是因為junit有斷言功能,如果測試結果不通過會告訴我們那個測試不通過,為什么,而如果是想以前的一般做法是寫一些測試代碼看其輸出結果,然后再由自己來判斷結果使用正確,使用junit的好處就是這個結果是否正確的判斷是它來完成的,我們只需要看看它告訴我們結果是否正確就可以了,在一般情況下會大大提高效率。

安裝JUnit:

安裝很簡單,先到以下地址下載一個最新的zip包:

http://www.junit.org JUnit的網站,從該網站可以下載JUnit,并找到相關資料

下載完以后解壓縮到你喜歡的目錄下,假設是JUNIT_HOME,然后將JUNIT_HOME下的junit.jar包加到你的系統的CLASSPATH環境變量中,對于IDE環境,對于需要用到的junit的項目增加到lib中,其設置不同的IDE有不同的設置,這里不多講。

JUnit最佳實踐:

Martin Fowler說過:“當你試圖打印輸出一些信息或調試一個表達式時,寫一些測試代碼來替代那些傳統方法。”一開始,你會發現你總是要創建一些新的Fixture,而且測試似乎使你的編程速度慢了下來。然而不久之后,你會發現你重復使用相同的Fixture,而且新的測試通常只涉及添加一個新的測試方法。

你可能會寫許多測試代碼,但你很快就會發現你設想出的測試只有一小部分是真正有用的。你所需要的測試是那些會失敗的測試,即那些你認為不會失敗的測試,或你認為應該失敗卻成功的測試。

我們前面提到過測試是一個不會中斷的過程。一旦你有了一個測試,你就要一直確保其正常工作,以檢驗你所加入的新的工作代碼。不要每隔幾天或最后才運行測試,每天你都應該運行一下測試代碼。這種投資很小,但可以確保你得到可以信賴的工作代碼。你的返工率降低了,你會有更多的時間編寫工作代碼。

不要認為壓力大,就不寫測試代碼。相反編寫測試代碼會使你的壓力逐漸減輕,因為通過編寫測試代碼

 

,你對類的行為有了確切的認識。你會更快地編寫出有效率地工作代碼。

下面是一些具體的編寫測試代碼的技巧或較好的實踐方法:

1. 不要用TestCase的構造函數初始化Fixture,而要用setUp()和tearDown()方法。

2. 不要依賴或假定測試運行的順序,因為JUnit利用Vector保存測試方法。所以不同的平臺會按不同的順序從Vector中取出測試方法。

3. 避免編寫有副作用的TestCase。例如:如果隨后的測試依賴于某些特定的交易數據,就不要提交交易數據。簡單的回滾就可以了。

4. 當繼承一個測試類時,記得調用父類的setUp()和tearDown()方法。

5. 將測試代碼和工作代碼放在一起,一邊同步編譯和更新。(使用Ant中有支持junit的task.)

6. 測試類和測試方法應該有一致的命名方案。如在工作類名前加上test從而形成測試類名。

7. 確保測試與時間無關,不要依賴使用過期的數據進行測試。導致在隨后的維護過程中很難重現測試。

8. 如果你編寫的軟件面向國際市場,編寫測試時要考慮國際化的因素。不要僅用母語的Locale進行測試。

9. 盡可能地利用JUnit提供地assert/fail方法以及異常處理的方法,可以使代碼更為簡潔。

10.測試要盡可能地小,執行速度快。

11.不要硬性規定數據文件的路徑。

12.利用Junit 的自動異常處理書寫簡潔的測試代碼

事實上在Junit 中使用try-catch 來捕獲異常是沒有必要的,Junit 會自動捕獲異常。那些沒有被捕獲的異常就被當成錯誤處理。

13. 充分利用Junit 的assert/fail 方法

assertSame()用來測試兩個引用是否指向同一個對象

assertEquals()用來測試兩個對象是否相等

14. 確保測試代碼與時間無關

15. 使用文檔生成器做測試文檔。

JUnit和ant結合

ant 提供了兩個 target : junit 和 junitreport 運行所有 測試用例 ,并生成 html 格式的報表

具體操作如下:

1.將 junit.jar 放在 ANT_HOMElib 目錄下

2.修改 build.xml ,加入如下 內容:

-------------- One or more tests failed, check the report for detail... -----------------------------

運行 這個 target ,ant 會運行每個 TestCase,在 report 目錄下就有了 很多 TEST*.xml 和 一些網頁打開 report 目錄下的 index.html 就可以看到很直觀的測試運行報告,一目了然。

在Eclipse中開發、運行JUnit測試相當簡單。因為Eclipse本身集成了JUnit相關組件,并對JUnit的運行提供了無縫的支持。

【編輯推薦】

責任編輯:金賀 來源: 百度百科
相關推薦

2009-06-19 16:26:51

JUnit測試骨架

2012-09-13 11:08:53

IBMdw

2013-01-07 13:54:17

Android開發JUnit單元測試

2009-09-23 09:20:09

白盒測試Pex框架

2009-07-15 17:49:09

Jython開發

2011-07-25 15:55:21

Sencha ToucHtml 5

2011-08-11 13:02:43

Struts2Junit

2012-02-07 09:08:50

Feed4JUnitJava

2020-12-30 07:08:27

Java方法測試

2012-03-13 16:14:09

JavaJUnit

2009-07-03 14:52:32

JSP開發框架FastJSP

2009-06-02 17:18:10

hibernate框架簡介

2017-01-14 23:26:17

單元測試JUnit測試

2017-01-16 12:12:29

單元測試JUnit

2009-08-19 04:15:00

線性鏈表

2011-11-18 15:18:41

Junit單元測試Java

2009-12-07 14:51:57

WCF框架

2011-07-06 14:01:33

Monkey

2010-06-03 09:13:35

2021-01-07 14:06:30

Spring BootJUnit5Java
點贊
收藏

51CTO技術棧公眾號

国产资源在线观看| 3d成人h动漫网站入口| 自拍偷拍亚洲综合| 欧美人交a欧美精品| 日韩 欧美 高清| 日韩av官网| av电影天堂一区二区在线| 国产丝袜高跟一区| 国产一区精品视频| 香蕉521av成人网| 极品中文字幕一区| 久久99久久精品| 亚洲精品一区中文| 日本精品一区二区三区高清 久久| 久久丁香四色| 日本在线不卡视频| 亚洲综合日韩中文字幕v在线| 国产精品流白浆在线观看| 国产一区二区三区在线观看视频 | 久久综合色之久久综合| 一本一道久久a久久综合精品| 男女av一区三区二区色多| 狠狠干一区二区| 国产伦理一区| 日韩资源av在线| 国内精品视频666| 六月婷婷激情综合| av不卡在线观看| 日本中文字幕片| 亚洲精品视频区| 粉嫩av一区二区三区免费野| 中文av在线播放| 欧美综合久久久| 成人影欧美片| 亚洲欧美在线磁力| 久久综合给合| 国产精品一区久久| 影音先锋久久资源网| 亚洲丰满在线| 高清免费成人av| 污视频网站观看| 午夜视频在线观看一区| 国产丝袜在线| 日韩视频在线免费观看| 午夜精品福利视频网站| 国产激情视频在线观看| 亚洲精品永久免费| 亚欧在线免费观看| a'aaa级片在线观看| 亚洲欧美精品中文字幕在线| 精品中文字幕一区二区三区| 日韩美女视频免费看| 自拍偷拍欧美专区| 久草精品电影| 不卡一二三区首页| 影音先锋可以看的网站| 日韩欧美aaaaaa| 超碰成人在线观看| 国产精品jizz视频| 成人动漫中文字幕| 天堂资源中文在线| 精品国产免费一区二区三区四区| 亚洲精品69| 亚洲字幕一区二区| 国产黄色精品视频| 亚洲aⅴ优女av综合久久久| 久久国产亚洲精品| 综合一区中文字幕| 亚洲少妇中出一区| www.综合| 国产日韩中文字幕| 丁香婷婷深情五月亚洲| 黄色直播在线| 在线观看日韩专区| 午夜久久福利| 欧美一级片中文字幕| 欧美日韩亚洲综合在线 欧美亚洲特黄一级| 欧美va视频| 官网99热精品| 国产日产亚洲精品系列| 麻豆av在线免费观看| 国产精品美女久久久久av超清| 久久国产精品露脸对白| 日韩黄色视屏| 中文字幕欧美日韩| 欧美特黄一级| free性亚洲| 国产婷婷成人久久av免费高清| 99精品电影| 黄色三级视频片| 亚洲精品少妇网址| 欧美日韩国产色综合一二三四| 久久久久久久久久久久久久国产| 日韩欧美一级二级三级| 久久一区二区三区喷水| 另类小说第一页| 国产视频在线一区二区| 狠狠爱成人网| 日本高清视频网站www| 中文字幕亚洲欧美日韩2019| 国产九九精品| 影音先锋电影在线观看| 国内久久久精品| 波多野洁衣一区| 55av亚洲| 欧美午夜免费| 欧美视频一区二| 国产韩日影视精品| 久草在线资源网站| 久久99视频精品| 9久草视频在线视频精品| 这里有精品可以观看| 日本午夜精品一区二区| 欧美视频日韩视频| 欧美午夜不卡| 神马精品久久| 国产精品影片在线观看| 亚洲欧美一区二区久久| 成人香蕉社区| 能看的毛片网站| 成人污视频在线观看| 欧美电影免费观看高清完整| 91麻豆精品秘密入口| 亚洲制服丝袜av| 亚洲一区二区三区四区五区中文 | 亚洲免费影视第一页| 黑丝一区二区三区| 你懂的视频在线| 国产精品视频最多的网站| 国产精品护士白丝一区av| 91久久精品无嫩草影院| 黄色片视频在线免费观看| 中文字幕综合在线| 成人av免费在线| 福利一区视频| 欧美久久久久久久久久久久久| 亚洲人午夜精品| 国产a区久久久| 青青国产精品| 成人久久久久久久久| 欧美激情啊啊啊| 国产精品久久久久7777按摩| 欧美大胆a级| 免费男女羞羞的视频网站主页在线观看 | 国产精品电影一区二区三区| 午夜免费欧美电影| 成人18网址在线观看| 欧美在线视频一区二区| 一区二区日韩电影| 亚洲精品中文字幕乱码| 国产精品一二三区视频| 亚洲欧美自拍偷拍色图| 激情五月综合网| 你懂的免费在线观看视频网站| 久久久久久久久久码影片| 亚洲精品小视频| 国产蜜臀97一区二区三区| 成人激情在线| 日韩专区在线| 午夜探花在线观看| 欧美成人黑人xx视频免费观看| 亚洲欧美一区二区不卡| 欧美特黄一区| www.51av欧美视频| 99热成人精品热久久66| 国产精品xxxxx| 欧美日韩激情一区二区| 国产电影精品久久禁18| 加勒比色综合久久久久久久久| 最新国产在线| 欧美日韩另类综合| 久久韩剧网电视剧| 亚洲v日本v欧美v久久精品| 蜜桃av一区| 激情视频亚洲| 日韩精品福利| 日韩一级片一区二区| 国产精品av在线| 精品国产91乱码一区二区三区| 日本一区二区久久| 欧美日韩在线大尺度| 欧美日韩女优| 三级国产三级在线| 亚洲永久激情精品| 日本a级片电影一区二区| 欧美不卡在线视频| 亚洲欧美日韩中文字幕一区二区三区 | 色中色综合网| 成人国产电影在线观看| 先锋成人影音| 少妇免费毛片久久久久久久久| 欧美区二区三区| 成人网址大全| 欧美电影网址| 精品国产午夜肉伦伦影院| 日韩电影精品| 久久精品无码一区二区日韩av| 国产综合 伊人色| 嫩草成人www欧美| 电影一区二区三区|