新手你真的分不清軟件測試方法?今天給大家說一說
軟件測試方法種類繁多,有白盒測試、黑盒測試、靜態(tài)測試、動(dòng)態(tài)測試、集成測試等等,記憶起來容易混亂,傻傻分不清楚,如果把軟件測試方法進(jìn)行分類, 就會(huì)清晰很多。現(xiàn)在test先生把常用的軟件測試方法列出來,讓大家更容易區(qū)分記憶。
1.從是否關(guān)心軟件內(nèi)部結(jié)構(gòu)和具體實(shí)現(xiàn)的角度劃分(按測試分類)
白盒測試、黑盒測試、灰盒測試
(1)白盒測試:又稱為結(jié)構(gòu)測試或邏輯驅(qū)動(dòng)測試,是一種按照程序內(nèi)部邏輯結(jié)構(gòu)和編碼結(jié)構(gòu),設(shè)計(jì)測試數(shù)據(jù)并完成測試的一種測試方法。
(2)黑盒測試:又稱為數(shù)據(jù)驅(qū)動(dòng)測試,把測試對(duì)象當(dāng)做看不見的黑盒,在完全不考慮程序內(nèi)部結(jié)構(gòu)和處理過程的情況下,測試者僅依據(jù)程序功能的需求規(guī)范考慮,確定測試用例和推斷測試結(jié)果的正確性,它是站在使用軟件或程序的角度,從輸入數(shù)據(jù)與輸出數(shù)據(jù)的對(duì)應(yīng)關(guān)系出發(fā)進(jìn)行的測試。
(3)灰盒測試:是一種綜合測試法,它將“黑盒”測試與“白盒”測試結(jié)合在一起,是基于程序運(yùn)行時(shí)的外部表現(xiàn)又結(jié)合內(nèi)部邏輯結(jié)構(gòu)來設(shè)計(jì)用例,執(zhí)行程序并采集路徑執(zhí)行信息和外部用戶接口結(jié)果的測試技術(shù)。
2.從是否執(zhí)行代碼角度
靜態(tài)測試、動(dòng)態(tài)測試
(1)靜態(tài)測試:指不運(yùn)行被測程序本身,僅通過分析或檢查源程序的語法、結(jié)構(gòu)、過程、接口等來檢查程序的正確性。
(2)動(dòng)態(tài)測試:是指通過運(yùn)行被測程序,檢查運(yùn)行結(jié)果與預(yù)期結(jié)果的差異,并分析運(yùn)行效率、正確性和健壯性等性能指標(biāo)。
3.從軟件開發(fā)的過程按階段劃分有
單元測試、集成測試、確認(rèn)測試、系統(tǒng)測試、驗(yàn)收測試、回歸測試
(1)單元測試:又稱模塊測試,是針對(duì)軟件設(shè)計(jì)的最小單位----程序模塊或功能模塊,進(jìn)行正確性檢驗(yàn)的測試工作。其目的在于檢驗(yàn)程序各模塊是否存在各種差錯(cuò),是否能正確地實(shí)現(xiàn)了其功能,滿足其性能和接口要求。
(2)集成測試:又叫組裝測試或聯(lián)合,是單元測試的多級(jí)擴(kuò)展,是在單元測試的基礎(chǔ)上進(jìn)行的一種有序測試。旨在檢驗(yàn)軟件單元之間的接口關(guān)系,以期望通過測試發(fā)現(xiàn)各軟件單元接口之間存在的問題,最終把經(jīng)過測試的單元組成符合設(shè)計(jì)要求的軟件。
(3)確認(rèn)測試:又稱有效性測試。任務(wù)是驗(yàn)證軟件的功能和性能及其它特性是否與用戶的要求一致。對(duì)軟件的功能和性能要求在軟件需求規(guī)格說明書中已經(jīng)明確規(guī)定。它包含的信息就是軟件確認(rèn)測試的基礎(chǔ)。
(4)系統(tǒng)測試:是為判斷系統(tǒng)是否符合要求而對(duì)集成的軟、硬件系統(tǒng)進(jìn)行的測試活動(dòng)、它是將已經(jīng)集成好的軟件系統(tǒng),作為基于整個(gè)計(jì)算機(jī)系統(tǒng)的一個(gè)元素,與計(jì)算機(jī)硬件、外設(shè)、某些支持軟件、人員、數(shù)據(jù)等其他系統(tǒng)元素結(jié)合在一起,在實(shí)際運(yùn)行環(huán)境下,對(duì)計(jì)算機(jī)系統(tǒng)進(jìn)行一系列的組裝測試和確認(rèn)測試。
(5)驗(yàn)收測試:以用戶為主的測試,軟件開發(fā)人員和質(zhì)量保證人員參加,由用戶設(shè)計(jì)測試用例。不是對(duì)系統(tǒng)進(jìn)行全覆蓋測試,而是對(duì)核心業(yè)務(wù)流程進(jìn)行測試。
(6)回歸測試:是指修改了舊代碼后,重新進(jìn)行測試以確認(rèn)修改沒有引入新的錯(cuò)誤或?qū)е缕渌a產(chǎn)生錯(cuò)誤。