版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
白盒測(cè)試和單元測(cè)試歡迎進(jìn)入特斯汀學(xué)院主講老師:RoyQQ:578225840班主任
QQ:1522599327課程回顧類(lèi)的多態(tài)的必要條件繼承重寫(xiě)父類(lèi)引用指向子類(lèi)對(duì)象接口的多態(tài)的必要條件在不同類(lèi)中實(shí)現(xiàn)接口。接口引用指向?qū)崿F(xiàn)類(lèi)的對(duì)象。接口的特性接口中定義的屬性都是常量。接口中定義的方法都是抽象方法,必須在實(shí)現(xiàn)接口的類(lèi)中通過(guò)重寫(xiě)實(shí)現(xiàn)。一個(gè)類(lèi)可以實(shí)現(xiàn)多個(gè)接口,從而方便進(jìn)行功能的擴(kuò)展。降低類(lèi)之間的耦合度。目錄CONTENTPart.1白盒測(cè)試White-boxTestingPart.2單元測(cè)試UnitTestingPart.3JUnit單元測(cè)試框架UnitTestingbyJUnitPART1白盒測(cè)試White-boxTesting白盒測(cè)試定義白盒測(cè)試全面了解程序內(nèi)部邏輯結(jié)構(gòu)、對(duì)所有邏輯路徑進(jìn)行測(cè)試。白盒測(cè)試是窮舉路徑測(cè)試。在使用這一方案時(shí),測(cè)試者必須檢查程序的內(nèi)部結(jié)構(gòu),從檢查程序的邏輯著手,得出測(cè)試數(shù)據(jù)。貫穿程序的獨(dú)立路徑數(shù)是天文數(shù)字。方法常用的白盒測(cè)試方法有兩大類(lèi):靜態(tài)測(cè)試方法和動(dòng)態(tài)測(cè)試方法。靜態(tài)測(cè)試不要求在計(jì)算機(jī)上實(shí)際執(zhí)行所測(cè)程序,通過(guò)分析或檢查源程序的語(yǔ)法、結(jié)構(gòu)、過(guò)程、接口等來(lái)檢查程序的正確性。也就是常說(shuō)的codereview。動(dòng)態(tài)測(cè)試是通過(guò)輸入一組預(yù)先按照一定的測(cè)試準(zhǔn)則構(gòu)造的實(shí)例數(shù)據(jù)來(lái)動(dòng)態(tài)運(yùn)行程序,而達(dá)到發(fā)現(xiàn)程序錯(cuò)誤的過(guò)程。在動(dòng)態(tài)分析技術(shù)中,最重要的技術(shù)是路徑和分支測(cè)試。靜態(tài)白盒測(cè)試代碼審查市面上目前有許多代碼審查工具,比如SonarQube、CodeStriker等等,大家可以根據(jù)公司所用的工具選擇了解。關(guān)注問(wèn)題:編碼規(guī)范問(wèn)題:命名不規(guī)范、注釋不清晰、縮進(jìn)格式不正確等代碼結(jié)構(gòu)問(wèn)題:重復(fù)代碼、巨大的方法和類(lèi)、分層不當(dāng)、緊耦合工具、框架使用不當(dāng):Spring、Hibernate、AJAX實(shí)現(xiàn)問(wèn)題:錯(cuò)誤驗(yàn)證、異常處理、事務(wù)劃分、線程、性能、安全、實(shí)現(xiàn)過(guò)于復(fù)雜、代碼可讀性不佳、擴(kuò)展性不好測(cè)試問(wèn)題:測(cè)試覆蓋度不夠、可測(cè)試性不好代碼評(píng)審不負(fù)責(zé)檢查功能、邏輯是否正確。動(dòng)態(tài)白盒測(cè)試白盒測(cè)試方法與原則白盒測(cè)試的覆蓋標(biāo)準(zhǔn)包括邏輯覆蓋、循環(huán)覆蓋和基本路徑測(cè)試。其中邏輯覆蓋包括語(yǔ)句覆蓋、判定覆蓋、條件覆蓋、判定/條件覆蓋、條件組合覆蓋和路徑覆蓋。1.語(yǔ)句覆蓋每條語(yǔ)句至少執(zhí)行一次。2.判定覆蓋每個(gè)判定的每個(gè)分支至少執(zhí)行一次。3.條件覆蓋每個(gè)判定的每個(gè)條件應(yīng)取到各種可能的值。4.判定/條件覆蓋同時(shí)滿(mǎn)足判定覆蓋條件覆蓋。5.條件組合覆蓋每個(gè)判定中各條件的每一種組合至少出現(xiàn)一次。6.路徑覆蓋使程序中每一條可能的路徑至少執(zhí)行一次。白盒測(cè)試實(shí)例根據(jù)流程圖結(jié)合白盒測(cè)試方法設(shè)計(jì)測(cè)試用例,覆蓋每條路徑的所有判斷和條件。結(jié)合邊界值等價(jià)類(lèi)方法進(jìn)行設(shè)計(jì)。PART2單元測(cè)試UnitTesting單元測(cè)試定義單元測(cè)試(unittesting)是指對(duì)軟件中的最小可測(cè)試單元進(jìn)行檢查和驗(yàn)證。對(duì)于單元測(cè)試中單元的定義,一般根據(jù)實(shí)際情況判定,如C語(yǔ)言中單元指一個(gè)函數(shù),Java里單元指一個(gè)類(lèi)或方法,圖形化的軟件中可以指一個(gè)窗口或一個(gè)菜單等??偟膩?lái)說(shuō),單元就是人為規(guī)定的最小的被測(cè)功能模塊。單元測(cè)試是在軟件開(kāi)發(fā)過(guò)程中要進(jìn)行的最低級(jí)別的測(cè)試活動(dòng),軟件的獨(dú)立單元將在與程序的其他部分相隔離的情況下進(jìn)行測(cè)試。意義執(zhí)行單元測(cè)試,就是為了證明這段代碼的行為和我們期望的一致。在軟件研發(fā)階段越早發(fā)現(xiàn)的Bug,修改的成本越低。單元測(cè)試是由程序員自己來(lái)完成,最終受益的也是程序員自己。TDD(測(cè)試驅(qū)動(dòng)開(kāi)發(fā))其實(shí)就是先編寫(xiě)單元測(cè)試代碼,再編寫(xiě)產(chǎn)品實(shí)現(xiàn)代碼。PART3JUnit單元測(cè)試框架UnitTestingbyJUnitJUnit單元測(cè)試框架定義右鍵->new->other->JUnit->JunitTestCase->Next->NewJuint4test->Name->setup->teardown->ClassUnderTest->Next->勾選你要測(cè)試的函數(shù)->Finish->提示引入JUnit庫(kù)->FinishJUnit基本注解注解用途@Before每一次運(yùn)行測(cè)試方法之前執(zhí)行的方法@After每一次運(yùn)行測(cè)試方法之后執(zhí)行的方法@BeforeClass被注解的方法在被測(cè)試類(lèi)開(kāi)始之前執(zhí)行一次@AfterClass被注解的方法在被測(cè)試類(lèi)開(kāi)始之后執(zhí)行一次@Test被注解的方法是JUnit單元測(cè)試的測(cè)試方法JUnit斷言斷言的作用斷言表示為一些布爾表達(dá)式,程序員相信在程序中的某個(gè)特定點(diǎn)該表達(dá)式值為真,可以在任何時(shí)候啟用和禁用斷言驗(yàn)證。簡(jiǎn)而言之,斷言用于判斷程序運(yùn)行結(jié)果是否符合預(yù)期,也就是測(cè)試用例的預(yù)期結(jié)果。JUnit常用斷言斷言用途fail本次執(zhí)行失敗,不寫(xiě)fail或其他斷言,默認(rèn)為passassertEquals判斷兩個(gè)值相等則pass,不等則failassertNull斷言一個(gè)對(duì)象為空assertTrue斷言一個(gè)布爾表達(dá)式為真JUnit參數(shù)化數(shù)據(jù)驅(qū)動(dòng)相關(guān)注解@RunWith(Parameterized.class):注解JUnit測(cè)試類(lèi),指定本次執(zhí)行使用參數(shù)化@Parameters:生成并返回測(cè)試數(shù)據(jù)相關(guān)方法在JUnit參數(shù)化的類(lèi)中,需要有一個(gè)構(gòu)造方法,用于存儲(chǔ)和傳遞測(cè)試數(shù)據(jù)。由@Parameters注解的靜態(tài)方法,是一個(gè)Collection或者Iterator,生成并返回測(cè)試數(shù)據(jù)。構(gòu)造方法需要用對(duì)應(yīng)的參數(shù)列表接收數(shù)據(jù)。這樣,數(shù)據(jù)將被傳遞到@Test注解的測(cè)試方法,逐條進(jìn)行測(cè)試,直到集合中不再有元素。JUnit用例管理創(chuàng)建TestSuite在包含JUnit4case的包中右鍵->new->other->JUnit=->JunitTestSuite>Next->NewJUnit4Suite->Name->選擇你需要執(zhí)行的Case->Finish。添加Case@SuiteClasses({JUnit4.class})在@SuiteClasses注解中指定要執(zhí)行的ca
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年電梯安全知識(shí)競(jìng)賽獎(jiǎng)品贊助與提供合同3篇
- 二零二五年海參養(yǎng)殖基地與農(nóng)產(chǎn)品營(yíng)銷(xiāo)策劃公司合作合同文本3篇
- 二零二五年度鋼結(jié)構(gòu)景觀亭臺(tái)制作安裝合同3篇
- 二零二五年度CFG樁基施工與監(jiān)理一體化承包合同2篇
- 二零二五年度高鐵站車(chē)庫(kù)租賃與行李寄存服務(wù)合同3篇
- 二零二五年教育培訓(xùn)機(jī)構(gòu)實(shí)習(xí)學(xué)生勞動(dòng)合同規(guī)范文本3篇
- 二零二五版物業(yè)停車(chē)場(chǎng)設(shè)施改造合同2篇
- 二零二五年文化演出經(jīng)紀(jì)代理合同解除反訴狀3篇
- 二零二五版勞務(wù)合同封面設(shè)計(jì)專(zhuān)業(yè)服務(wù)及知識(shí)產(chǎn)權(quán)保護(hù)協(xié)議2篇
- 二零二五版抵押物抵押權(quán)設(shè)定與變更合同3篇
- 2025年湖北武漢工程大學(xué)招聘6人歷年高頻重點(diǎn)提升(共500題)附帶答案詳解
- 【數(shù) 學(xué)】2024-2025學(xué)年北師大版數(shù)學(xué)七年級(jí)上冊(cè)期末能力提升卷
- GB/T 26846-2024電動(dòng)自行車(chē)用電動(dòng)機(jī)和控制器的引出線及接插件
- 遼寧省沈陽(yáng)市皇姑區(qū)2024-2025學(xué)年九年級(jí)上學(xué)期期末考試語(yǔ)文試題(含答案)
- 妊娠咳嗽的臨床特征
- 國(guó)家公務(wù)員考試(面試)試題及解答參考(2024年)
- 《阻燃材料與技術(shù)》課件 第6講 阻燃纖維及織物
- 2024年金融理財(cái)-擔(dān)保公司考試近5年真題附答案
- 泰山產(chǎn)業(yè)領(lǐng)軍人才申報(bào)書(shū)
- 高中語(yǔ)文古代文學(xué)課件:先秦文學(xué)
- 三創(chuàng)賽獲獎(jiǎng)-非遺文化創(chuàng)新創(chuàng)業(yè)計(jì)劃書(shū)
評(píng)論
0/150
提交評(píng)論