基于狀態(tài)空間剪枝的并發(fā)軟件測試序列生成方法
發(fā)布時間:2021-07-10 05:55
并發(fā)軟件在軟件行業(yè)中扮演了一個重要角色,可靠的軟件質(zhì)量需要全面的測試工作來保證。并發(fā)軟件執(zhí)行過程非常復(fù)雜,系統(tǒng)的狀態(tài)數(shù)目巨大,然而目前的軟件測試方法大多數(shù)都存在覆蓋率低、冗余率高或測試效率低等現(xiàn)象。因此在保證無冗余的情況下,生成對測試目標(biāo)完全覆蓋的測試序列是非常困難的。本文采用待測行為集合描述測試目的,并將測試覆蓋標(biāo)準(zhǔn)定義為對待測行為及其數(shù)據(jù)相關(guān)行為執(zhí)行路徑的全覆蓋。為提升測試序列獲取效果和效率,本文基于形式化語言著色Petri網(wǎng)(Colored Petri Net,CPN),提出一種適用于并發(fā)軟件的測試序列生成方法。該方法在狀態(tài)空間中通過狀態(tài)節(jié)點投影、狀態(tài)結(jié)點剪枝、弧剪枝等方法,去除與測試目的無關(guān)的執(zhí)行路徑,以縮減狀態(tài)空間規(guī)模。針對基于狀態(tài)空間剪枝的并發(fā)軟件測試序列生成方法,做了以下四個方面的工作:(1)采用待測行為集合描述測試目的,并將測試覆蓋標(biāo)準(zhǔn)定義為對待測、及其數(shù)據(jù)相關(guān)行為執(zhí)行路徑覆蓋。對CPN模型進(jìn)行擴(kuò)展,將軟件系統(tǒng)模型中的變遷劃分為四類:(1)待測行為,(2)相關(guān)行為,(3)與待測、相關(guān)行為存在并發(fā)關(guān)系的并發(fā)無關(guān)行為,(4)與待測、相關(guān)行為不存在并發(fā)關(guān)系的非并發(fā)無關(guān)行為。為...
【文章來源】:內(nèi)蒙古大學(xué)內(nèi)蒙古自治區(qū) 211工程院校
【文章頁數(shù)】:73 頁
【學(xué)位級別】:碩士
【部分圖文】:
剪枝后的狀態(tài)空間Figure5.3TheStateSpaceafterPrune
(2)獲取相鄰可達(dá)子圖之間最短連接序列;RS(M10, M55)與 RS(M75, M107)之間的最短序列 path1,具體如下:ath 1:M55→PreAnalisys→M64→PrePlan→M70→Notice→M73→Live Record→M75RS(M75, M107)與 RS(M117, M121)之間的最短序列 path 2,具體如下:ath 2:M107→Online1→M113→Suspicious Item→M115→Next Process→M116→Overall Analyze117(3)獲取系統(tǒng)初態(tài)到第一個可達(dá)子圖初態(tài)之間的連接序列 Path I,具體如下:ath I = M1→Alarm Call→M2→Time Record→M4→Location Record→M10(4)獲取系統(tǒng)末態(tài)到最后一個可達(dá)子圖末態(tài)之間的連接序列 Path E,具體如下:ath E = M121→Crack→M123→End Report→M125→Online2→M127→Case Archive→M128因此,測試序列的集合為:FullPath = path I ×SubPath1×SubPath2 ×SubPath3 ×path 60 條測試序列,如圖 5.4 所示。
基于狀態(tài)空間剪枝的并發(fā)軟件測試序列生成方法測試目的,但存在大量的冗余序列,因此該方法在此基礎(chǔ)上提出測試優(yōu)化方法將冗余序列去除,最終得到對待測、相關(guān)行為完全覆蓋且無冗余的測試序列。由于該方法需要進(jìn)行大量的優(yōu)化工作,降低了測試效率,因此本方法與其優(yōu)化工作前的測試效果進(jìn)行比較。
本文編號:3275325
【文章來源】:內(nèi)蒙古大學(xué)內(nèi)蒙古自治區(qū) 211工程院校
【文章頁數(shù)】:73 頁
【學(xué)位級別】:碩士
【部分圖文】:
剪枝后的狀態(tài)空間Figure5.3TheStateSpaceafterPrune
(2)獲取相鄰可達(dá)子圖之間最短連接序列;RS(M10, M55)與 RS(M75, M107)之間的最短序列 path1,具體如下:ath 1:M55→PreAnalisys→M64→PrePlan→M70→Notice→M73→Live Record→M75RS(M75, M107)與 RS(M117, M121)之間的最短序列 path 2,具體如下:ath 2:M107→Online1→M113→Suspicious Item→M115→Next Process→M116→Overall Analyze117(3)獲取系統(tǒng)初態(tài)到第一個可達(dá)子圖初態(tài)之間的連接序列 Path I,具體如下:ath I = M1→Alarm Call→M2→Time Record→M4→Location Record→M10(4)獲取系統(tǒng)末態(tài)到最后一個可達(dá)子圖末態(tài)之間的連接序列 Path E,具體如下:ath E = M121→Crack→M123→End Report→M125→Online2→M127→Case Archive→M128因此,測試序列的集合為:FullPath = path I ×SubPath1×SubPath2 ×SubPath3 ×path 60 條測試序列,如圖 5.4 所示。
基于狀態(tài)空間剪枝的并發(fā)軟件測試序列生成方法測試目的,但存在大量的冗余序列,因此該方法在此基礎(chǔ)上提出測試優(yōu)化方法將冗余序列去除,最終得到對待測、相關(guān)行為完全覆蓋且無冗余的測試序列。由于該方法需要進(jìn)行大量的優(yōu)化工作,降低了測試效率,因此本方法與其優(yōu)化工作前的測試效果進(jìn)行比較。
本文編號:3275325
本文鏈接:http://sikaile.net/kejilunwen/ruanjiangongchenglunwen/3275325.html
最近更新
教材專著