軟件測試?yán)碚摚耗康?、周期、流?/h1>
1、軟件測試的定義
軟件測試就是在軟件投入運(yùn)行前,對軟件需求分析、設(shè)計規(guī)格說明和編碼實現(xiàn)的最終審查,它是軟件質(zhì)量保證的關(guān)鍵步驟。通常對軟件測試的定義有兩種描述:
定義1:軟件測試是為了發(fā)現(xiàn)錯誤而執(zhí)行程序的過程。
定義2:軟件測試是根據(jù)軟件開發(fā)各階段的規(guī)格說明和程序的內(nèi)部結(jié)構(gòu)而精心設(shè)計的一批測試用例,并利用這些測試用例運(yùn)行程序以及發(fā)現(xiàn)錯誤的過程,即執(zhí)行測試步驟。
測試:所謂測試的含義,首先是一項活動,在這項活動中某個系統(tǒng)或組成的部分將在特定的條件下運(yùn)行,結(jié)果將被觀察和記錄,并對系統(tǒng)或組成部分進(jìn)行評價。測試活動有兩種結(jié)果:找出缺陷和故障,或顯示軟件執(zhí)行正確。測試是一個或多個測試用例的集合。
測試用例:所謂測試用例是為特定的目的而設(shè)計的一組測試輸入、執(zhí)行條件和預(yù)期的結(jié)果;測試用例是執(zhí)行測試的最小實體。
測試步驟:測試步驟詳細(xì)規(guī)定了如何設(shè)置、執(zhí)行、評估特定的測試用例。
軟件測試的基本問題
軟件生命周期:一個軟件生命周期包括制定計劃、需求分析定義、軟件設(shè)計、程序編碼、軟件測試、軟件運(yùn)行、軟件維護(hù)、軟件停用等8個階段。
軟件測試的對象:
● 軟件測試不等于程序測試。
● 軟件測試貫串于軟件定義和開發(fā)的整個過程。
● 軟件開發(fā)過程中所產(chǎn)生的需求規(guī)格說明、概要設(shè)計規(guī)格說明、詳細(xì)設(shè)計規(guī)格說明以及源程序都是軟件測試的對象。
軟件測試在軟件生命周期中橫跨兩個階段:
***個階段:單元測試階段,即在每個模塊編寫出以后所做的必要測試。
第二個階段:綜合測試階段,即在完成單元測試后進(jìn)行的測試,如集成測試、系統(tǒng)測試、驗收測試。
軟件測試涉及的關(guān)鍵問題包括四個方面:
(1)測試由誰來執(zhí)行。
(2)測試什么。
(3)什么時候進(jìn)行測試。
(4)怎樣進(jìn)行測試。
2、軟件測試的基本理論
2.1 軟件測試的目的
(1)測試是程序的執(zhí)行過程,目的在于發(fā)現(xiàn)錯誤;不能證明程序的正確性,除非僅處理有限種情況。
(2)檢查系統(tǒng)是否滿足需求也是測試的期望目標(biāo)。
(3)一個好的測試用例在于發(fā)現(xiàn)了還未曾發(fā)現(xiàn)的錯誤;一次成功的測試則是發(fā)現(xiàn)了錯誤的測試。
注意:測試無法說明錯誤不存在,只能說明軟件錯誤已出現(xiàn)。
2.2 軟件測試的原則
(1)盡早地和及時地測試;
(2)測試用例應(yīng)當(dāng)由測試數(shù)據(jù)和與之對應(yīng)的預(yù)期結(jié)果這兩部分組成;
(3)在程序提交測試后,應(yīng)當(dāng)由專門的測試人員進(jìn)行測試;
(4)測試用例應(yīng)包括合理的輸入條件和不合理的輸入條件;
(5)嚴(yán)格執(zhí)行測試計劃,排除測試的隨意性;
(6)充分注意測試當(dāng)中的群體現(xiàn)象;
(7)應(yīng)對每一個測試結(jié)果做全面的檢查;
(8)保存測試計劃、測試用例、出錯統(tǒng)計和最終分析報告,為維護(hù)工作提供充分的資料。
2.3 軟件測試的分類
軟件測試按照不同的劃分方法,有不同的分類:
按照軟件測試用例的設(shè)計方法而論,軟件測試可以分為白盒測試法和黑盒測試法。
按照軟件測試的策略和過程來分類,軟件測試可分為單元測試、集成測試、系統(tǒng)測試、驗證測試和確認(rèn)測試。
2.4 測試信息流程
測試信息流程如圖1-2所示。測試過程中需要三類輸入:軟件配置、測試配置和測試工具。
圖-測試信息流程
2.5 軟件測試的周期性
軟件測試的周期性是“測試->改錯->再測試->再改錯”這樣一個循環(huán)過程,如下圖所示。
圖-軟件測試的周期性
2.6 測試停止的依據(jù)(標(biāo)準(zhǔn))
***類標(biāo)準(zhǔn):測試超過了預(yù)定時間,則停止測試。
第二類標(biāo)準(zhǔn):執(zhí)行了所有的測試用例,但并沒有發(fā)現(xiàn)故障,則停止測試。
第三類標(biāo)準(zhǔn):使用特定的測試用例設(shè)計方案作為判斷測試停止的基礎(chǔ)。
第四類標(biāo)準(zhǔn):正面指出停止測試的具體要求,即停止測試的標(biāo)準(zhǔn)可定義為查出某一預(yù)訂數(shù)目的故障。
第五類標(biāo)準(zhǔn):根據(jù)單位時間內(nèi)查出故障的數(shù)量決定是否停止測試。
【編輯推薦】