源代碼審核基本步驟及流程-一邊編碼測(cè)試_第1頁(yè)
源代碼審核基本步驟及流程-一邊編碼測(cè)試_第2頁(yè)
源代碼審核基本步驟及流程-一邊編碼測(cè)試_第3頁(yè)
源代碼審核基本步驟及流程-一邊編碼測(cè)試_第4頁(yè)
源代碼審核基本步驟及流程-一邊編碼測(cè)試_第5頁(yè)
免費(fèi)預(yù)覽已結(jié)束,剩余40頁(yè)可下載查看

付費(fèi)下載

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

軟件源代碼漏洞及缺陷掃描技術(shù)源代碼審核的基本步驟及流程12以借口為標(biāo)準(zhǔn)的代碼審計(jì)——書寫自動(dòng)化測(cè)試的樁1一邊編碼,一邊測(cè)試2邊界測(cè)試3整體測(cè)試4編碼、測(cè)試交叉分離5結(jié)束6目錄軟件源代碼漏洞及缺陷掃描技術(shù)一邊編碼,一邊測(cè)試必要性測(cè)試方法測(cè)試工具小結(jié)3必要性必要性5點(diǎn)擊此處添加腳注信息

一個(gè)特定的開(kāi)發(fā)組織或軟件應(yīng)用系統(tǒng)的測(cè)試水平取決于對(duì)那些未發(fā)現(xiàn)的Bug的潛在后果的重視程度。這種后果一方面常常會(huì)被軟件的開(kāi)發(fā)人員所忽視,而另一方面卻有可能損害組織的信譽(yù),并且會(huì)導(dǎo)致對(duì)未來(lái)的市場(chǎng)產(chǎn)生負(fù)面的影響。相反地,一個(gè)可靠的軟件系統(tǒng)的良好的聲譽(yù)將有助于一個(gè)開(kāi)發(fā)組織獲取未來(lái)的市場(chǎng)。

很多研究成果表明,無(wú)論什么時(shí)候作出修改都要進(jìn)行完整的回歸測(cè)試,在生命周期中盡早地對(duì)軟件產(chǎn)品進(jìn)行測(cè)試將使效率和質(zhì)量得到最好的保證。Bug發(fā)現(xiàn)得越晚,修改它所需的費(fèi)用就越高,因此從經(jīng)濟(jì)角度來(lái)看,應(yīng)該盡可能早的查找和修改Bug。在修改費(fèi)用變得過(guò)高之前,單元測(cè)試是一個(gè)在早期抓住Bug的機(jī)會(huì)。必要性6點(diǎn)擊此處添加腳注信息

從全程的費(fèi)用來(lái)考慮,相比起那些復(fù)雜且曠日持久的集成測(cè)試,或是不穩(wěn)定的軟件系統(tǒng)來(lái)說(shuō),編碼時(shí)進(jìn)行測(cè)試所需的費(fèi)用是很低的。研究顯示高達(dá)50%的維護(hù)工作量被花在那些總是會(huì)有的Bug的修改上面。如果這些Bug在開(kāi)發(fā)階段被排除掉的話,那么工作量就可以節(jié)省下來(lái)。當(dāng)考慮到軟件維護(hù)費(fèi)用可能會(huì)比最初的開(kāi)發(fā)費(fèi)用高出數(shù)倍的時(shí)候,這種潛在的對(duì)50%軟件維護(hù)費(fèi)用的節(jié)省將對(duì)整個(gè)軟件生命周期費(fèi)用產(chǎn)生重大的影響。測(cè)試方法測(cè)試方法8點(diǎn)擊此處添加腳注信息單元測(cè)試

單元測(cè)試是對(duì)最小的可測(cè)試軟件元素(單元)實(shí)施的測(cè)試,它所測(cè)試的內(nèi)容包括內(nèi)部結(jié)構(gòu)(如邏輯和數(shù)據(jù)流)以及單元的功能和可觀測(cè)的行為。這里的單元不一定是指一個(gè)具體的函數(shù)或一個(gè)類的方法,“單元”是:(1)可測(cè)試的、最小的、不可再分的程序模塊。(2)有明確的功能、規(guī)格定義。(3)有明確的接口定義,清晰地與同一程序的其他單元?jiǎng)澐珠_(kāi)來(lái)。測(cè)試方法9點(diǎn)擊此處添加腳注信息

在具體實(shí)現(xiàn)時(shí),單元測(cè)試也可能對(duì)應(yīng)的是多個(gè)程序文件中的一組函數(shù)。在一種傳統(tǒng)的結(jié)構(gòu)化編程語(yǔ)言中,比如C,要進(jìn)行測(cè)試的單元一般是函數(shù)或子過(guò)程。在象C++這樣的面向?qū)ο蟮恼Z(yǔ)言中,要進(jìn)行測(cè)試的基本單元是類。單元測(cè)試的原則同樣被擴(kuò)展到第四代語(yǔ)言(4GL)的開(kāi)發(fā)中,在這里基本單元被典型地劃分為一個(gè)菜單或顯示界面。測(cè)試方法10點(diǎn)擊此處添加腳注信息單元測(cè)試的一般方法:

單元測(cè)試的方法一般分為兩類:白盒方法和黑盒方法。白盒方法通常是分析單元內(nèi)部結(jié)構(gòu)后通過(guò)對(duì)單元輸入輸出的用例構(gòu)造,達(dá)到單元內(nèi)程序路徑的最大覆蓋,盡量保證單元內(nèi)部程序運(yùn)行路徑處理正確,它側(cè)重于單元內(nèi)部結(jié)構(gòu)的測(cè)試,依賴于對(duì)單元實(shí)施情況的了解。

黑盒方法通過(guò)對(duì)單元輸入輸出的用例構(gòu)造驗(yàn)證單元的特性和行為,側(cè)重于核實(shí)單元的可觀測(cè)行為和功能,并不依賴于對(duì)單元實(shí)施情況的了解。進(jìn)行單元測(cè)試必須綜合使用上述兩個(gè)方法,否則,單元測(cè)試很可能就是不成功、不完整和不徹底的。測(cè)試方法11點(diǎn)擊此處添加腳注信息單元測(cè)試的目標(biāo)

單元測(cè)試要達(dá)到的目標(biāo),總體來(lái)說(shuō)就是保證單元內(nèi)部的處理是正確的、沒(méi)有遺漏和多余功能。細(xì)分而言,單元測(cè)試要達(dá)到以下幾個(gè)目標(biāo):(1)信息能否正確地流入和流出單元。(2)在單元工作過(guò)程中,其內(nèi)部數(shù)據(jù)能否保持其完整性,包括內(nèi)部數(shù)據(jù)的形式、內(nèi)容及相互關(guān)系不發(fā)生錯(cuò)誤,也包括全局變量在單元中的處理和影響。(3)在為限制數(shù)據(jù)加工而設(shè)置的邊界處,能否正確工作。(4)單元的運(yùn)行能否做到滿足特定的邏輯覆蓋。(5)單元中發(fā)生了錯(cuò)誤,其中的出錯(cuò)處理措施是否有效。測(cè)試方法12點(diǎn)擊此處添加腳注信息單元測(cè)試的一般過(guò)程

單元測(cè)試過(guò)程分為計(jì)劃、設(shè)計(jì)、實(shí)現(xiàn)、執(zhí)行、評(píng)估等幾個(gè)步驟。測(cè)試方法13點(diǎn)擊此處添加腳注信息計(jì)劃單元測(cè)試計(jì)劃需明確如下目標(biāo):(1)明確單元測(cè)試的測(cè)試對(duì)象,確定測(cè)試需求及測(cè)試通過(guò)的標(biāo)準(zhǔn),明確活動(dòng)的輸出。(2)明確測(cè)試方法和需要運(yùn)行的工具需求。(3)對(duì)工作量進(jìn)行估計(jì),確定測(cè)試所用資源(包括人力資源和設(shè)備資源),創(chuàng)建測(cè)試任務(wù)的時(shí)間表,必要時(shí)需將一個(gè)單元測(cè)試任務(wù)分解成更細(xì)化的子任務(wù)進(jìn)行明確。(4)對(duì)測(cè)試風(fēng)險(xiǎn)進(jìn)行分析,制定相應(yīng)的應(yīng)急措施。(5)明確測(cè)試優(yōu)先級(jí),制定測(cè)試取舍策略。(6)輸出單元測(cè)試計(jì)劃文檔。測(cè)試方法14點(diǎn)擊此處添加腳注信息設(shè)計(jì)單元測(cè)試的設(shè)計(jì)主要是完成方案和模型的確認(rèn),包括如下幾方面內(nèi)容:(1)測(cè)試需求的進(jìn)一步細(xì)化,必要時(shí)需追溯到詳細(xì)設(shè)計(jì)文檔中的單元設(shè)計(jì)目標(biāo)。(2)設(shè)計(jì)單元測(cè)試模型,包括與模型相關(guān)的工具的選用。(3)制定測(cè)試方案,包括模型的設(shè)計(jì)和實(shí)現(xiàn)、定義測(cè)試規(guī)程和用例的實(shí)現(xiàn)和組織。(4)輸出單元測(cè)試方案文檔。測(cè)試方法15點(diǎn)擊此處添加腳注信息實(shí)現(xiàn)單元測(cè)試實(shí)現(xiàn)主要是針對(duì)用例的實(shí)現(xiàn),包括如下幾個(gè)方面:(1)參考測(cè)試模型和測(cè)試方案,制定具體的測(cè)試用例,創(chuàng)建可重用的測(cè)試腳本。(2)輸出單元用例文檔。測(cè)試方法16點(diǎn)擊此處添加腳注信息執(zhí)行根據(jù)單元測(cè)試的方案、用例對(duì)單元進(jìn)行測(cè)試,驗(yàn)證測(cè)試的結(jié)果并記錄測(cè)試過(guò)程中出現(xiàn)的缺陷,主要保留執(zhí)行過(guò)程數(shù)據(jù)以備問(wèn)題定位的回歸對(duì)比。測(cè)試方法17點(diǎn)擊此處添加腳注信息評(píng)估對(duì)單元測(cè)試的結(jié)果進(jìn)行評(píng)估,主要有如下幾個(gè)方面:(1)實(shí)際測(cè)試過(guò)程的記錄,描述與計(jì)劃的差異和原因,包括補(bǔ)充或裁剪的測(cè)試項(xiàng)目清單。(2)對(duì)測(cè)試過(guò)程完備性以及被測(cè)單元質(zhì)量的評(píng)價(jià),包括用例執(zhí)行情況清單和匯總分析。(3)主要從需求覆蓋和代碼覆蓋的角度進(jìn)行測(cè)試完備性的評(píng)估。(4)遺留問(wèn)題記錄和可能的分析。(5)輸出單元測(cè)試報(bào)告。測(cè)試方法18點(diǎn)擊此處添加腳注信息單元測(cè)試用例設(shè)計(jì)方法測(cè)試用例的設(shè)計(jì)在單元測(cè)試中占有非常重要的地位,測(cè)試用例設(shè)計(jì)的好壞直接影響到測(cè)試的效果。確定測(cè)試用例之所以很重要,原因有以下幾方面:(1)測(cè)試用例構(gòu)成了設(shè)計(jì)和制定測(cè)試過(guò)程的基礎(chǔ)。(2)測(cè)試的“深度”與測(cè)試用例的數(shù)量成比例。由于每個(gè)測(cè)試用例反映不同的場(chǎng)景、條件或經(jīng)由產(chǎn)品的事件流,因而,隨著測(cè)試用例數(shù)量的增加,對(duì)產(chǎn)品質(zhì)量和測(cè)試流程也就越有信心。判斷測(cè)試是否完全的一個(gè)主要評(píng)測(cè)方法是基于需求的覆蓋,而這又是以確定、實(shí)施和/或執(zhí)行的測(cè)試用例的數(shù)量為依據(jù)的。測(cè)試方法19點(diǎn)擊此處添加腳注信息(3)測(cè)試工作量與測(cè)試用例的數(shù)量成比例。根據(jù)全面且細(xì)化的測(cè)試用例,可以更準(zhǔn)確地估計(jì)測(cè)試周期各連續(xù)階段的時(shí)間安排。(4)測(cè)試設(shè)計(jì)和開(kāi)發(fā)的類型以及所需的資源主要都受控于測(cè)試用例。測(cè)試用例通常根據(jù)它們所關(guān)聯(lián)關(guān)系的測(cè)試類型或測(cè)試需求來(lái)分類,而且將隨類型和需求進(jìn)行相應(yīng)地改變。測(cè)試方法20點(diǎn)擊此處添加腳注信息最佳方案是為每個(gè)測(cè)試需求至少編制兩個(gè)測(cè)試用例:(1)一個(gè)測(cè)試用例用于證明該需求已經(jīng)滿足,通常稱作正面測(cè)試用例。(2)另一個(gè)測(cè)試用例反映某個(gè)無(wú)法接受、反?;蛞馔獾臈l件或數(shù)據(jù),用于論證只有在所需條件下才能夠滿足該需求,這個(gè)測(cè)試用例稱作負(fù)面測(cè)試用例。測(cè)試方法21點(diǎn)擊此處添加腳注信息

單元測(cè)試既可以是白盒測(cè)試也可以是黑盒測(cè)試。白盒測(cè)試主要是檢查程序的內(nèi)部結(jié)構(gòu)、邏輯、循環(huán)和路徑。其常用測(cè)試用例設(shè)計(jì)方法有:邏輯覆蓋和基本路徑測(cè)試。根據(jù)覆蓋測(cè)試的目標(biāo)不同,邏輯覆蓋又可分為:語(yǔ)句覆蓋,判定覆蓋,判定-條件覆蓋,條件組合覆蓋及路徑覆蓋等。白盒測(cè)試用例設(shè)計(jì)還可用到:狀態(tài)轉(zhuǎn)移測(cè)試、數(shù)據(jù)定義-使用測(cè)試、等價(jià)類劃分、邊界值分析等。黑盒測(cè)試注重對(duì)程序功能方面的要求,它只用到程序的規(guī)格說(shuō)明,沒(méi)有用到程序的內(nèi)部結(jié)構(gòu)。其常用測(cè)試用例方法有:規(guī)范(規(guī)格)導(dǎo)出、等價(jià)類劃分、邊界值分析法、錯(cuò)誤推測(cè)法和因果圖分析方法。下面將簡(jiǎn)要介紹各個(gè)方法,更詳細(xì)的說(shuō)明請(qǐng)讀者自行參考相關(guān)的測(cè)試?yán)碚摃y(cè)試方法22點(diǎn)擊此處添加腳注信息1語(yǔ)句覆蓋語(yǔ)句覆蓋就是設(shè)計(jì)若干個(gè)測(cè)試用例,運(yùn)行所測(cè)程序,使得每一可執(zhí)行語(yǔ)句至少執(zhí)行一次。2判定覆蓋判定覆蓋就是設(shè)計(jì)若干個(gè)測(cè)試用例,運(yùn)行所測(cè)程序,使得程序中每個(gè)判斷的取TURE分支和取FALSE分支至少經(jīng)歷一次。3條件覆蓋條件覆蓋就是設(shè)計(jì)若干個(gè)測(cè)試用例,運(yùn)行所測(cè)程序,使得程序中每個(gè)判斷的每個(gè)條件的可能取值至少執(zhí)行一次。測(cè)試方法23點(diǎn)擊此處添加腳注信息4判定-條件覆蓋判定-條件覆蓋就是設(shè)計(jì)足夠的測(cè)試用例,使得判斷中每個(gè)條件的所有可能取值至少執(zhí)行一次,同時(shí)每個(gè)判斷的所有可能判斷結(jié)果至少執(zhí)行一次。也就是說(shuō)要求各個(gè)判斷的所有可能的條件取值組合至少執(zhí)行一次。5條件組合覆蓋條件組合覆蓋就是設(shè)計(jì)足夠的測(cè)試用例,運(yùn)行所測(cè)程序,使得每個(gè)判斷得所有可能得條件取值組合至少執(zhí)行一次。測(cè)試方法24點(diǎn)擊此處添加腳注信息6路徑覆蓋路徑測(cè)試就是設(shè)計(jì)足夠的測(cè)試用例,覆蓋程序中所有可能的路徑。7規(guī)范(規(guī)格)導(dǎo)出法規(guī)范導(dǎo)出法是根據(jù)相關(guān)的規(guī)范描述來(lái)設(shè)計(jì)測(cè)試用例。每一個(gè)測(cè)試用例用來(lái)測(cè)試一個(gè)或多個(gè)規(guī)范陳述語(yǔ)句。一個(gè)比較實(shí)際的方法是根據(jù)陳述規(guī)范所用語(yǔ)句的順序來(lái)相應(yīng)地為被測(cè)單元設(shè)計(jì)測(cè)試用例。測(cè)試方法25點(diǎn)擊此處添加腳注信息8狀態(tài)轉(zhuǎn)移測(cè)試法對(duì)于那些以狀態(tài)機(jī)作為模型或設(shè)計(jì)為狀態(tài)機(jī)的軟件,狀態(tài)轉(zhuǎn)移測(cè)試是合適的測(cè)試方法。測(cè)試用例通過(guò)能導(dǎo)致?tīng)顟B(tài)遷移的事件來(lái)測(cè)試狀態(tài)之間的轉(zhuǎn)換。9數(shù)據(jù)定義-使用測(cè)試法數(shù)據(jù)定義是指數(shù)據(jù)項(xiàng)被賦值的地方,數(shù)據(jù)使用是指數(shù)據(jù)項(xiàng)被讀或使用的地方。目的是設(shè)計(jì)測(cè)試用例以驅(qū)動(dòng)執(zhí)行通過(guò)數(shù)據(jù)定義于使用之間的路徑。測(cè)試方法26點(diǎn)擊此處添加腳注信息MOCK測(cè)試 mock測(cè)試就是在測(cè)試過(guò)程中,對(duì)于某些不容易構(gòu)造或者不容易獲取的對(duì)象,用一個(gè)虛擬的對(duì)象來(lái)創(chuàng)建以便測(cè)試的測(cè)試方法。測(cè)試方法27點(diǎn)擊此處添加腳注信息mock對(duì)象 mock對(duì)象是一個(gè)虛擬的對(duì)象。mock對(duì)象就是真實(shí)對(duì)象在調(diào)試期間的代替品。測(cè)試方法28點(diǎn)擊此處添加腳注信息mock對(duì)象使用范疇

真實(shí)對(duì)象具有不可確定的行為,產(chǎn)生不可預(yù)測(cè)的效果,(如:股票行情,天氣預(yù)報(bào))真實(shí)對(duì)象很難被創(chuàng)建的真實(shí)對(duì)象的某些行為很難被觸發(fā)真實(shí)對(duì)象實(shí)際上還不存在的(和其他開(kāi)發(fā)小組或者和新的硬件打交道)等等。測(cè)試方法29點(diǎn)擊此處添加腳注信息使用mock對(duì)象測(cè)試的關(guān)鍵步驟

使用一個(gè)接口來(lái)描述這個(gè)對(duì)象在產(chǎn)品代碼中實(shí)現(xiàn)這個(gè)接口在測(cè)試代碼中實(shí)現(xiàn)這個(gè)接口在被測(cè)試代碼中只是通過(guò)接口來(lái)引用對(duì)象,所以它不知道這個(gè)引用的對(duì)象是真實(shí)對(duì)象還是mock對(duì)象。測(cè)試方法30點(diǎn)擊此處添加腳注信息MockObject

使用MockObject進(jìn)行測(cè)試,主要是用來(lái)模擬那些在應(yīng)用中不容易構(gòu)造(如HttpServletRequest必須在Servlet容器中才能構(gòu)造出來(lái))或者比較復(fù)雜的對(duì)象(如JDBC中的ResultSet對(duì)象)從而使測(cè)試順利進(jìn)行的工具。

目前,在Java陣營(yíng)中主要的Mock測(cè)試工具有JMock,MockCreator,Mockrunner,EasyMock,MockMaker等,在微軟的.Net陣營(yíng)中主要是Nmock,.NetMock等。測(cè)試方法31點(diǎn)擊此處添加腳注信息MOCK運(yùn)用實(shí)例

一個(gè)鬧鐘根據(jù)時(shí)間來(lái)進(jìn)行提醒服務(wù),如果過(guò)了下午5點(diǎn)鐘就播放音頻文件提醒大家下班了,如果我們要利用真實(shí)的對(duì)象來(lái)測(cè)試的話就只能苦苦等到下午五點(diǎn),然后把耳朵放在音箱旁,我們應(yīng)該利用mock對(duì)象[1]來(lái)進(jìn)行測(cè)試,這樣我們就可以模擬控制時(shí)間了,而不用苦苦等待時(shí)鐘轉(zhuǎn)到下午5點(diǎn)鐘了。下面是代碼:測(cè)試方法32點(diǎn)擊此處添加腳注信息PublicabstractclassEnvironmental{booleanplayedWav=false;publicabstractlonggetTime();publicabstractvoidplayWavFile(StringfileName);publicabstractbooleanwavWasPlayed();publicabstractvoidresetWav();}測(cè)試方法33點(diǎn)擊此處添加腳注信息publicclassSystemEnvironmentextendsEnvironmental{publiclonggetTime(){ returnSystem.currentTimeMillis();}publicvoidplayWavFile(StringfileName){ playedWav=true;}publicbooleanwavWasPlayed(){ returnplayedWav;}publicvoidresetWav(){ playedWav=false;}}測(cè)試方法34點(diǎn)擊此處添加腳注信息publicclassMockSystemEnvironmentextendsEnvironmental{privatelongcurrentTime;publiclonggetTime(){ returncurrentTime;}publicvoidsetTime(longcurrentTime){ this.currentTime=currentTime;}publicvoidplayWavFile(StringfileName){ playedWav=true;}publicbooleanwavWasPlayed(){ returnplayedWav;}publicvoidresetWav(){ playedWav=false;}}測(cè)試工具測(cè)試工具36點(diǎn)擊此處添加腳注信息使用JUnit進(jìn)行單元測(cè)試 JUnit就是對(duì)程序代碼進(jìn)行單元測(cè)試的一種Java框架。通過(guò)每次修改程序之后測(cè)試代碼,程序員就可以保證代碼的的少量變動(dòng)不會(huì)破壞整個(gè)系統(tǒng)。官方對(duì)JUnit的定義是“JUnitisasimpleframeworktowriterepeatabletests.”測(cè)試工具37點(diǎn)擊此處添加腳注信息自己編寫測(cè)試框架的弊病

自己編寫測(cè)試框架進(jìn)行單元測(cè)試一般有兩個(gè)方法。第一種方法是在要測(cè)試的類的main()方法中編寫測(cè)試代碼。隨著程序越變?cè)酱?,這種開(kāi)發(fā)方法很快就開(kāi)始顯現(xiàn)出了缺陷:(1)混亂。類接口越大,main()就越大。類可能僅僅因?yàn)檎5臏y(cè)試就變得非常龐大。(2)代碼膨脹。由于加入了測(cè)試,所以產(chǎn)品代碼比所需要的要大。(3)測(cè)試不可靠。main()是代碼的一部分,main()就對(duì)其他開(kāi)發(fā)者通過(guò)類接口無(wú)法訪問(wèn)的私有成員和方法享有訪問(wèn)權(quán)。出于這個(gè)原因,這種測(cè)試方法很容易出錯(cuò)。測(cè)試工具38點(diǎn)擊此處添加腳注信息(4)很難自動(dòng)測(cè)試。要進(jìn)行自動(dòng)測(cè)試,必須創(chuàng)建另一程序來(lái)將參數(shù)傳遞給main()。第二種方法是編寫一個(gè)測(cè)試類框架,它雖然能夠克服上個(gè)方法的缺陷,但增加了開(kāi)發(fā)組織維護(hù)這個(gè)測(cè)試類框架的工作量,為立即大規(guī)模的重用設(shè)置障礙。而且,由于這個(gè)測(cè)試框架是內(nèi)部開(kāi)發(fā)的,存在著與業(yè)界難于交流和溝通的弊病。測(cè)試工具39點(diǎn)擊此處添加腳注信息JUnit的優(yōu)勢(shì)(1)需要編寫自己的框架。(2)它是開(kāi)放源代碼,因此不需要購(gòu)買框架。(3)開(kāi)放源代碼社區(qū)中的其他開(kāi)發(fā)者會(huì)使用它,因此可以找到許多示例。(4)可以將測(cè)試代碼與產(chǎn)品代碼分開(kāi)。(5)易于集成到構(gòu)建過(guò)程中。測(cè)試工具40點(diǎn)擊此處添加腳注信息安裝JUnit安裝JUnit只需要很簡(jiǎn)單的兩個(gè)步驟,下面是安裝Junit的步驟:(1)解開(kāi)DownLoad下來(lái)的junit.zip文件。(2)增加junit.jar到classpath中。例如,setclasspath=%classpath%;INSTALL_DIR\Junit3.7\junit.jar經(jīng)過(guò)這兩步,就可以開(kāi)始使用JUnit了。測(cè)試工具41點(diǎn)擊此處添加腳注信息使用JUnit編寫測(cè)試代碼的一般步驟是:(1)定義測(cè)試類名稱,一般是將要測(cè)試的類名后附加Test。(2)引入JUnit框架包。importjunit.framework.*。(3)測(cè)試類繼承JUnit的TestCase類。

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論