李佳婧 蘇小紅 馬培軍 龔丹丹
摘要: 已有的面向錯(cuò)誤定位的測(cè)試用例選擇方法大多數(shù)僅考慮了測(cè)試用例的語(yǔ)句覆蓋信息,不能為錯(cuò)誤定位選擇合適的測(cè)試用例,從而導(dǎo)致不能有效提高錯(cuò)誤定位的準(zhǔn)確性。針對(duì)這一問(wèn)題,提出了一種新的測(cè)試用例選擇方法。文中方法分析了測(cè)試用例的執(zhí)行路徑信息,根據(jù)測(cè)試用例動(dòng)態(tài)執(zhí)行時(shí)的分支特征,采用分支聚類方法對(duì)測(cè)試用例進(jìn)行選擇。實(shí)驗(yàn)表明,提出的方法可以有效減少測(cè)試用例數(shù)量,降低錯(cuò)誤定位的復(fù)雜度,并提高錯(cuò)誤定位的準(zhǔn)確性。
關(guān)鍵詞:
中圖分類號(hào):TP311文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):2095-2163(2012)05-0016-04
0引言
隨著人們?nèi)粘I顚?duì)計(jì)算機(jī)軟件的需求不斷增長(zhǎng),軟件系統(tǒng)的規(guī)模和復(fù)雜度也在不斷攀升,而對(duì)大規(guī)模復(fù)雜系統(tǒng)的測(cè)試和維護(hù)等需求超出了目前的測(cè)試與維護(hù)技術(shù)能力,因此也就出現(xiàn)了許多與軟件失效相關(guān)的事故,并且大多數(shù)的失效都是由于軟件錯(cuò)誤導(dǎo)致的。軟件發(fā)生失效后,如何找到引發(fā)失效的錯(cuò)誤位置或引發(fā)失效的原因,就是錯(cuò)誤定位?眼1-4?演問(wèn)題。而軟件錯(cuò)誤定位算法的復(fù)雜度高,并且冗余的測(cè)試用例會(huì)影響軟件錯(cuò)誤定位的準(zhǔn)確性。為了降低錯(cuò)誤定位的復(fù)雜度,提高錯(cuò)誤定位的準(zhǔn)確性,對(duì)如何選擇有利于實(shí)現(xiàn)錯(cuò)誤定位的測(cè)試用例開(kāi)展研究則具有重要意義。傳統(tǒng)的測(cè)試用例選擇方法多數(shù)是面向軟件測(cè)試的需求,追求的是測(cè)試的充分性,而面向錯(cuò)誤定位的測(cè)試用例選擇方法則是側(cè)重于選擇對(duì)錯(cuò)誤定位有效的測(cè)試用例。所以面向軟件測(cè)試需求選擇得到的測(cè)試用例集合并不完全適用于錯(cuò)誤定位,甚至有些冗余的測(cè)試用例還會(huì)影響到軟件錯(cuò)誤定位的準(zhǔn)確性。為了提高錯(cuò)誤定位的準(zhǔn)確性并且降低其復(fù)雜度,研究面向錯(cuò)誤定位的測(cè)試用例選擇方法是極其重要的。
目前,面向軟件錯(cuò)誤定位需求的測(cè)試用例選擇方法的研究也逐漸增多。如Renieris?眼5?演等提出“近鄰模型”,該模型的主要思想是在失效測(cè)試用例的鄰域附近選擇成功測(cè)試用例,利用