發(fā)布后bug的數(shù)量和嚴(yán)重性,是評(píng)估軟件質(zhì)量、測(cè)試工作質(zhì)量的重要依據(jù)。
鄭州軟件開(kāi)發(fā)!
我們首先需要對(duì)遺漏bug的原因進(jìn)行分類(lèi)分析。遺漏bug的原因分為兩個(gè)方面:一是引起bug的根本原因,二是bug遺漏的原因。我們分別說(shuō)明一下這兩個(gè)方面的分類(lèi)。
首先是bug的根本原因(Root Cause),這指的是在軟件開(kāi)發(fā)過(guò)程中,是哪個(gè)過(guò)程引起了bug,通常的分類(lèi)有:
需求分析
設(shè)計(jì)(還可以細(xì)分為數(shù)據(jù)庫(kù)設(shè)計(jì)、頁(yè)面設(shè)計(jì)等等)
編碼
部署(例如數(shù)據(jù)庫(kù)升級(jí))
其他
這里沒(méi)有“測(cè)試”,原因是測(cè)試這個(gè)過(guò)程一般是不會(huì)引起bug,如果有的測(cè)試人員引起了bug,那一般是測(cè)試人員參與了其他的過(guò)程。
總之,這樣的分類(lèi)方法是按照開(kāi)發(fā)過(guò)程為標(biāo)準(zhǔn),我們還可以根據(jù)實(shí)際情況添加一些別的分類(lèi)。
第二種原因是“遺漏”的原因,這指的是為什么在發(fā)布前,測(cè)試人員沒(méi)有把bug找出來(lái),這和缺陷的根本原因是完全不同的。其實(shí)遺漏的原因我們可以歸結(jié)于:測(cè)試沒(méi)有覆蓋相應(yīng)的用例。我們分類(lèi)的依據(jù)是:為什么沒(méi)有覆蓋?;镜姆诸?lèi)有:
測(cè)試遺漏
測(cè)試用例未設(shè)計(jì)
測(cè)試用例被裁減
測(cè)試環(huán)境不同
其他
下面我們說(shuō)明一下這幾個(gè)分類(lèi)的不同。測(cè)試遺漏指的是測(cè)試用例已經(jīng)設(shè)計(jì)好了,也確定要執(zhí)行,但是測(cè)試人員因?yàn)榇中牡仍颍瑳](méi)有執(zhí)行用例,這是一個(gè)比較嚴(yán)重的失誤。測(cè)試用例未設(shè)計(jì)指測(cè)試人員根本沒(méi)有考慮到,應(yīng)該這樣測(cè)試,通常是因?yàn)榻?jīng)驗(yàn)不足,或者對(duì)系統(tǒng)不了解等技術(shù)問(wèn)題;測(cè)試用例被裁減指測(cè)試用例已經(jīng)設(shè)計(jì)好,但是由于時(shí)間、人手等資源不足,不得不選擇放棄執(zhí)行一部分用例,這樣選擇必然會(huì)面臨一定的風(fēng)險(xiǎn),這在日常的測(cè)試中比較普遍。測(cè)試環(huán)境指在測(cè)試環(huán)境中沒(méi)問(wèn)題,但是在生產(chǎn)環(huán)境里有,原因是測(cè)試環(huán)境沒(méi)有完全模擬生產(chǎn)環(huán)境。
按照這些分類(lèi)進(jìn)行統(tǒng)計(jì),只是第一步,我們還可以把數(shù)量比較多的類(lèi)型再進(jìn)行細(xì)分,從而發(fā)現(xiàn)bug的深層原因,指導(dǎo)我們的過(guò)程改進(jìn)。在這個(gè)基礎(chǔ)上,我們還需要分析每個(gè)bug的詳細(xì)原因,豐富我們的知識(shí)庫(kù)。