五月丁香久久新网址,精品99久久久蜜桃,亚洲xx视频在线观看,日本一二三区在线视频,日韩在线96,欧美中日韩另类些,操碰97的网站,久久久九九,99干99操

首頁(yè) > 餐飲 > 正文

junit指的是什么?junit的優(yōu)點(diǎn)有哪些?

2023-06-02 09:51:06來(lái)源:今日熱點(diǎn)

JUnit是一個(gè)Java語(yǔ)言的單元測(cè)試框架。它由Kent Beck和Erich Gamma建立,逐漸成為源于Kent Beck的sUni...

JUnit是一個(gè)Java語(yǔ)言的單元測(cè)試框架。它由Kent Beck和Erich Gamma建立,逐漸成為源于Kent Beck的sUnit的xUnit家族中最為成功的一個(gè)。 JUnit有它自己的JUnit擴(kuò)展生態(tài)圈。多數(shù)Java的開(kāi)發(fā)環(huán)境都已經(jīng)集成了JUnit作為單元測(cè)試的工具。JUnit是由 Erich Gamma 和 Kent Beck 編寫的一個(gè)回歸測(cè)試框架(regression testing framework)。Junit測(cè)試是程序員測(cè)試,即所謂白盒測(cè)試,因?yàn)槌绦騿T知道被測(cè)試的軟件如何(How)完成功能和完成什么樣(What)的功能。Junit是一套框架,繼承TestCase類,就可以用Junit進(jìn)行自動(dòng)測(cè)試了。

junit的優(yōu)點(diǎn)有哪些?

另外junit是在極限編程和重構(gòu)(refactor)中被極力推薦使用的工具,因?yàn)樵趯?shí)現(xiàn)自動(dòng)單元測(cè)試的情況下可以大大的提高開(kāi)發(fā)的效率,但是實(shí)際上編寫測(cè)試代碼也是需要耗費(fèi)很多的時(shí)間和精力的,那么使用這個(gè)東西好處到底在哪里呢?筆者認(rèn)為是這樣的:

極限編程:要求在編寫代碼之前先寫測(cè)試,這樣可以強(qiáng)制你在寫代碼之前好好的思考代碼(方法)的功能和邏輯,否則編寫的代碼很不穩(wěn)定,那么你需要同時(shí)維護(hù)測(cè)試代碼和實(shí)際代碼,這個(gè)工作量就會(huì)大大增加。因此在極限編程中,基本過(guò)程是這樣的:構(gòu)思-> 編寫測(cè)試代碼-> 編寫代碼-> 測(cè)試,而且編寫測(cè)試和編寫代碼都是增量式的,寫一點(diǎn)測(cè)一點(diǎn),在編寫以后的代碼中如果發(fā)現(xiàn)問(wèn)題可以較快的追蹤到問(wèn)題的原因,減小回歸錯(cuò)誤的糾錯(cuò)難度。

重構(gòu):其好處和極限編程中是類似的,因?yàn)橹貥?gòu)也是要求改一點(diǎn)測(cè)一點(diǎn),減少回歸錯(cuò)誤造成的時(shí)間消耗。

其他情況:我們?cè)陂_(kāi)發(fā)的時(shí)候使用junit寫一些適當(dāng)?shù)臏y(cè)試也是有必要的,因?yàn)橐话阄覀円彩切枰帉憸y(cè)試的代碼的,可能原來(lái)不是使用的junit,如果使用junit,而且針對(duì)接口(方法)編寫測(cè)試代碼會(huì)減少以后的維護(hù)工作,例如以后對(duì)方法內(nèi)部的修改(這個(gè)就是相當(dāng)于重構(gòu)的工作了)。另外就是因?yàn)閖unit有斷言功能,如果測(cè)試結(jié)果不通過(guò)會(huì)告訴我們哪個(gè)測(cè)試不通過(guò),為什么,而如果是像以前的一般做法是寫一些測(cè)試代碼看其輸出結(jié)果,然后再由自己來(lái)判斷結(jié)果是否正確,使用junit的好處就是這個(gè)結(jié)果是否正確的判斷是它來(lái)完成的,我們只需要看看它告訴我們結(jié)果是否正確就可以了,在一般情況下會(huì)大大提高效率。

關(guān)鍵詞: junit指的是什么 junit的優(yōu)點(diǎn)有哪些

責(zé)任編輯:hnmd004

秦皇岛市| 扶风县| 安丘市| 厦门市| 贵溪市| 农安县| 永胜县| 保德县| 乃东县| 大田县| 辰溪县| 香港 | 大洼县| 安达市| 闽侯县| 延边| 桦甸市| 扶风县| 措美县| 郯城县| 甘孜| 平远县| 收藏| 毕节市| 通城县| 盖州市| 台湾省| 浙江省| 漾濞| 湘乡市| 保定市| 衡阳县| 新巴尔虎右旗| 黑河市| 安康市| 定州市| 忻城县| 察哈| 曲松县| 东港市| 东方市|