基于測試用例的錯誤定位技術(shù)研究.pdf_第1頁
已閱讀1頁,還剩102頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

1、隨著計算機軟件的復(fù)雜性越來越高和規(guī)模越來越大,錯誤定位在整個軟件開發(fā)和測試過程中需要花費時間和精力的比重越來越多。目前主要的調(diào)試工具是集成開發(fā)環(huán)境中的調(diào)試器,但是需要開發(fā)人員對程序非常的了解,并且有著豐富的經(jīng)驗直覺去設(shè)置斷點,由于調(diào)試程序沒有將檢查的語句按照一定的優(yōu)先級進行排序,所以需要花費大量的成本。為了解決手工操作調(diào)試器的問題,人們近幾十年來提出了自動化錯誤定位方法。通過自動化錯誤定位方法縮小搜尋錯誤的范圍,然后再通過手工方式找到錯

2、誤根源。其中,基于覆蓋率的錯誤定位方法通過運行大量的測試用例,得到測試用例的覆蓋程序?qū)嶓w的信息和測試結(jié)果,利用可疑度公式得到各個程序?qū)嶓w的可疑度排序。由于這種錯誤定位方法的計算復(fù)雜度低,所以已經(jīng)被廣泛使用。然而這種方法也存在自身的不足,例如,沒有充分分析程序?qū)嶓w間的相互關(guān)系,即控制依賴和數(shù)據(jù)依賴。除此之外,在軟件開發(fā)和測試中,回歸測試與軟件調(diào)試是迭代進行一直到?jīng)]有錯誤被檢測出來為止,如果將回歸測試用例全部用于錯誤定位將大大增加開發(fā)和測試

3、成本,并且回歸測試用例中存在著相同或者相似的測試用例,偶然性正確的測試用例以及在程序發(fā)生改變,例如新增程序,刪除不必要的程序以及修改原來的程序等時回歸測試用例也會產(chǎn)生過時的測試用例,不受控制的測試用例,冗余的測試用例和新的測試用例等。并且沒有考慮程序中功能模塊之間的調(diào)用,函數(shù)之間的調(diào)用以及一個函數(shù)中的控制依賴和數(shù)據(jù)依賴對回歸測試用例的影響。
  為了解決以上問題,本文考慮了影響分析,依賴和權(quán)值,改進遺傳算法和軟件度量的基于回歸測試

4、用例的錯誤定位方法,論文的主要成果包含以下幾個方面:
  (1)提出了基于影響分析的回歸測試優(yōu)先級錯誤定位方法,這種方法首先利用Ochiai錯誤定位方法得到初始語句可疑度及可疑度排行,其次,利用控制依賴圖和數(shù)據(jù)依賴圖建立聯(lián)合依賴圖,通過初始語句可疑度和聯(lián)合依賴圖得到各個節(jié)點的可疑度和可疑度排行,將初始語句可疑度排行加上各個節(jié)點的可疑度排行得到最終可疑度排行,最后,利用最終可疑度排行計算各個測試用例語句覆蓋的最終可疑度排行總和,數(shù)值

5、越大的測試用例,優(yōu)先級越高,利用按照優(yōu)先級排序好的測試用例進行回歸測試錯誤定位。通過實驗研究與分析,基于影響分析的回歸測試優(yōu)先級錯誤定位方法能夠提高定位程序中的錯誤的效率。
  (2)提出了根據(jù)控制依賴和數(shù)據(jù)依賴,測試用例覆蓋表和測試結(jié)果得到每條語句被成功或失敗測試用例控制依賴和數(shù)據(jù)依賴覆蓋的總次數(shù)得到頻繁被成功或失敗測試用例覆蓋的語句來緩解相同或相似測試用例對可疑度排行的影響,并且增加對失效產(chǎn)生上下文的理解。然后利用向量夾角余弦

6、權(quán)值公式計算每個成功測試用例的權(quán)值來減弱偶然性正確的測試用例對可疑度計算的影響。最后利用可疑度公式即每條語句被失敗測試用例控制依賴和數(shù)據(jù)依賴覆蓋的總次數(shù)除以每條語句被成功的測試用例覆蓋的權(quán)值之和的絕對值對語句可疑度進行排序來有效地進行回歸測試用例錯誤定位。實驗結(jié)果表明,利用依賴和權(quán)值改進回歸測試用例的錯誤定位方法的效率要優(yōu)于基于覆蓋率和基于依賴分析的回歸測試用例錯誤定位方法。
  (3)提出了基于改進遺傳免疫算法回歸測試用例生成的

7、錯誤定位方法,將人工免疫算法加入到遺傳算法中并進行改進來提高面向錯誤定位的回歸測試用例的質(zhì)量。在回歸測試中,代碼的改變包括新增代碼,刪除不必要的代碼以及修改原來的代碼等。因此回歸測試用例產(chǎn)生變化,產(chǎn)生了過時的測試用例,不受控制的測試用例,冗余的測試用例和新的測試用例。所以通過改進遺傳算法中的適應(yīng)值計算,以親和度計算和濃度計算代替適應(yīng)值計算使得更改的代碼與回歸測試用例緊密相連又保證回歸測試用例的多樣性,再通過將遺傳算法中以交叉為主,變異為

8、輔與人工免疫算法中以變異為主,交叉為輔相結(jié)合,保證測試用例可以執(zhí)行多條路徑。然后通過克隆抑制和接種疫苗保證經(jīng)過交叉,變異的測試用例依舊與更改的代碼緊密相連。最后群體更新得到最優(yōu)抗體,最優(yōu)抗體中的抗體可以覆蓋所有抗原A。因此改進遺傳免疫算法的回歸測試用例生成的錯誤定位方法可以緩解回歸測試用例中產(chǎn)生的過時的測試用例,不受控制的測試用例,冗余的測試用例和新的測試用例的問題。
  (4)提出了基于軟件度量的歸測試用例優(yōu)化的錯誤定位方法,這

9、種方法利用歷史缺陷按照功能點分類并結(jié)合缺陷嚴(yán)重級別和優(yōu)先級別以及功能模塊的調(diào)用頻率得到功能調(diào)用模塊缺陷率,進行回歸測試用例功能優(yōu)化,再根據(jù)函數(shù)之間的調(diào)用頻率得到回歸測試用例函數(shù)優(yōu)化,最后以其歷史Ochiai可疑度,程序依賴圖中的控制依賴邊和數(shù)據(jù)依賴邊得到平均節(jié)點Ochiai可疑度,根據(jù)測試用例覆蓋節(jié)點情況,得到各個測試用例的平均節(jié)點Ochiai可疑度之和,利用各個測試用例的平均節(jié)點Ochiai可疑度之和對測試用例進行回歸測試語句優(yōu)化,根

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論