• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于路徑關(guān)鍵狀態(tài)變量的測(cè)試用例約簡(jiǎn)

    2020-03-18 09:42:42趙逢禹
    關(guān)鍵詞:關(guān)聯(lián)矩陣狀態(tài)變量謂詞

    高 杰, 趙逢禹, 劉 亞

    (上海理工大學(xué) 光電信息與計(jì)算機(jī)工程學(xué)院, 上海 200093)

    0 引 言

    軟件測(cè)試是指使用人工或自動(dòng)的手段來(lái)運(yùn)行或測(cè)定某個(gè)軟件系統(tǒng)的過(guò)程,其目的在于檢驗(yàn)它是否滿足規(guī)定的需求或弄清預(yù)期結(jié)果與實(shí)際結(jié)果之間的差別[1],科學(xué)應(yīng)用測(cè)試方法可以盡可能地避免軟件在運(yùn)行過(guò)程中出現(xiàn)各種故障問(wèn)題[2]。軟件測(cè)試的核心任務(wù)之一就是構(gòu)建測(cè)試用例集。但軟件規(guī)模的擴(kuò)大會(huì)導(dǎo)致測(cè)試用例集會(huì)變得復(fù)雜龐大,若對(duì)其分類和約簡(jiǎn),會(huì)節(jié)省測(cè)試的時(shí)間和資源消耗。因此,測(cè)試用例集的約簡(jiǎn)旨在最大限度地減少執(zhí)行的測(cè)試用例的數(shù)量。

    測(cè)試用例約簡(jiǎn)的研究可以分為兩類,一類是基于模型的測(cè)試用例約簡(jiǎn)[3],如:通過(guò)構(gòu)建多優(yōu)化目標(biāo)模型,提出了不同的基于多優(yōu)化目標(biāo)的測(cè)試用例集約簡(jiǎn)算法[4]。建模過(guò)程復(fù)雜,且該嚴(yán)重依賴于模型設(shè)計(jì)的好壞;另一類是貪心算法、啟發(fā)式算法等基于人工智能技術(shù)的測(cè)試用例約簡(jiǎn)。由于這些算法過(guò)早收斂、優(yōu)化效率低的局限性,不斷有學(xué)者對(duì)其進(jìn)行改進(jìn),如:針對(duì)傳統(tǒng)貪婪算法存在過(guò)擬合的問(wèn)題,提出了一種基于貝葉斯網(wǎng)絡(luò)模型的黑匣子測(cè)試選擇方法[5],該方法可以確保僅將黑盒測(cè)試之間的強(qiáng)關(guān)系用于測(cè)試選擇,達(dá)到減少測(cè)試用例冗余的目的,而且該方法對(duì)于過(guò)度擬合更為健壯。但這種算法的效果仍取決于初始的測(cè)試用例集;應(yīng)用二分K-means聚類算法對(duì)回歸測(cè)試的測(cè)試用例集約簡(jiǎn),以白盒測(cè)試的路徑覆蓋為準(zhǔn)則,對(duì)每個(gè)測(cè)試用例進(jìn)行量化,使每個(gè)用例變成一個(gè)點(diǎn)[6]。以黑盒測(cè)試的功能需求數(shù)作為聚類數(shù),在聚類結(jié)果的每一簇中,按照離中心點(diǎn)的距離排序,依次從每一簇中選擇測(cè)試用例,直至滿足所有測(cè)試需求,得到約簡(jiǎn)的測(cè)試用例集。

    本文認(rèn)為不論是采用模型的方法還是采用貪心、啟發(fā)式算法等方法,基于路徑覆蓋的測(cè)試用例約簡(jiǎn)是基本的方法,為了獲取測(cè)試用例的執(zhí)行路徑,必須計(jì)算關(guān)鍵變量的狀態(tài)。此外,約簡(jiǎn)后的測(cè)試用例集能否與原測(cè)試用例集具有相同的錯(cuò)誤檢測(cè)率對(duì)測(cè)試用例約簡(jiǎn)至關(guān)重要[7]。本文提出一種基于謂詞和關(guān)鍵狀態(tài)變量分析的測(cè)試用例約簡(jiǎn)方法,旨在減少測(cè)試用例的冗余,提高測(cè)試效率,降低測(cè)試成本,并與原測(cè)試用例集具有相同的錯(cuò)誤檢測(cè)率。

    1 關(guān)鍵狀態(tài)變量

    1.1 關(guān)鍵狀態(tài)變量定義

    本文將影響謂詞表達(dá)式中判斷條件的變量稱為關(guān)鍵狀態(tài)變量。在程序運(yùn)行過(guò)程中,程序傳遞的參數(shù)的值會(huì)影響謂詞表達(dá)式中的判斷條件,而謂詞表達(dá)式中的判斷條件的結(jié)果會(huì)影響程序運(yùn)行的路徑。關(guān)鍵狀態(tài)變量包括以下3種參數(shù):

    (1) 程序運(yùn)行過(guò)程中傳遞給方法的參數(shù);

    (2)程序中影響謂詞表達(dá)式中的判斷條件的輸入或讀取的成員變量;

    (3) (1)、(2)中經(jīng)過(guò)一系運(yùn)算之后所得到的新參數(shù)。

    通過(guò)代碼來(lái)說(shuō)明本文所定義的關(guān)鍵狀態(tài)變量。

    代碼1關(guān)鍵狀態(tài)變量定義范例。

    1.int compute(int x)

    2.{

    3. intd= 7;

    4. if(d> 3)

    5.{

    6.x= 2 *x;

    7. }else

    8.{

    9.x=x*x;

    10.}

    11. inta,b,c;

    12.b=x/ 2;

    13.a=b;

    14.c=a* 3;

    15. if(a!= 0)

    16.{

    17. return 1;

    18. }

    19. return 0;

    20.}

    在代碼1范例中,有x,a,b,c,d這5個(gè)變量,其中x是傳入的參數(shù),a,d是謂詞判斷中的參數(shù),而a的值是由b賦予的。因此,本文認(rèn)為x,a,b,d是關(guān)鍵狀態(tài)變量。

    1.2 關(guān)鍵狀態(tài)變量獲取

    本文利用抽象語(yǔ)法樹(shù)(Abstract Syntax Tree, AST) 來(lái)獲取關(guān)鍵狀態(tài)變量。抽象語(yǔ)法樹(shù)是程序源代碼的抽象語(yǔ)法結(jié)構(gòu)的樹(shù)狀表現(xiàn)形式。

    不同的計(jì)算機(jī)高級(jí)語(yǔ)言都提供了抽象語(yǔ)法樹(shù)的處理包。本文所做的研究以C代碼為實(shí)驗(yàn)對(duì)象,C語(yǔ)言中的gcc編譯器可以構(gòu)造抽象語(yǔ)法樹(shù)。

    通過(guò)在程序源代碼的抽象語(yǔ)法樹(shù)中搜索不同的節(jié)點(diǎn)類型得到關(guān)鍵狀態(tài)變量。其具體步驟是:首先在抽象語(yǔ)法樹(shù)中找到這些節(jié)點(diǎn)類型,針對(duì)不同的節(jié)點(diǎn)類型做不同的處理,最終將滿足本文定義的所有關(guān)鍵狀態(tài)變量添加到關(guān)鍵狀態(tài)變量集合中。

    2 測(cè)試用例約簡(jiǎn)方案

    測(cè)試用例集約簡(jiǎn)的目的是去除測(cè)試用例中冗余的、無(wú)法發(fā)現(xiàn)程序缺陷的測(cè)試用例,從而減少測(cè)試成本,提高測(cè)試效率。

    本文所提出的測(cè)試用例約簡(jiǎn)方案主要有6步:

    (1) 測(cè)試用例聚類。本文所提出的測(cè)試用例約簡(jiǎn)方法與代碼執(zhí)行的路徑和關(guān)鍵狀態(tài)變量密切相關(guān)。因此,要將測(cè)試用例按其測(cè)試的功能以及輸入?yún)?shù)的參數(shù)列表聚類,聚類成若干個(gè)不同的測(cè)試用例集。

    (2)查找每類測(cè)試用例集對(duì)應(yīng)的源代碼。針對(duì)聚類后的每類測(cè)試用例集,根據(jù)測(cè)試的功能與輸入?yún)?shù)的型構(gòu)確定被測(cè)程序的程序源代碼。

    (3)代碼預(yù)處理。程序源代碼中的每個(gè)文件可能會(huì)有多個(gè)方法,每個(gè)方法中的局部變量可能會(huì)出現(xiàn)多次賦值和使用的情況。

    例如代碼2所示的代碼中,當(dāng)程序執(zhí)行執(zhí)行到第11行的條件判斷語(yǔ)句時(shí),x的值并不能確定,可能會(huì)取第5行的x,也可能會(huì)取第8行的x,即同一個(gè)變量在不同的情況下可能會(huì)被賦予不同的值。為了解決這種情況,本文對(duì)代碼進(jìn)行了預(yù)處理,保證每個(gè)變量對(duì)應(yīng)一個(gè)值。

    代碼2代碼預(yù)處理示例

    1.int compute(intx)

    2. {

    3. if(x> 3)

    4. {

    5.x= 2 *x;

    6. }else

    7. {

    8.x=x*x;

    9. }

    10. …

    11. if(x> 10)

    12. {

    13. inty=x;

    14. }

    15. }

    對(duì)代碼中的變量進(jìn)行預(yù)處理就是針對(duì)同一變量可能會(huì)被賦予不同值的變量換成不同的變量名。代碼2中示例代碼經(jīng)預(yù)處理后的結(jié)果如代碼3所示。

    代碼3代碼預(yù)處理結(jié)果示例

    1.int compute(intx)

    2. {

    3. if(x> 3)

    4. {

    5.x1= 2 *x;

    6. }else

    7. {

    8.x2=x*x;

    9. }

    10. …

    11. if (x1> 10)

    12. {

    13. inty=x1;

    14. }else if

    15. {

    16. inty=x2;

    17. }

    18.}

    (4)基于抽象語(yǔ)法樹(shù)的信息提取。利用高級(jí)語(yǔ)言中所提供的技術(shù)構(gòu)建程序源代碼的抽象語(yǔ)法樹(shù)。獲取抽象語(yǔ)法樹(shù)中的每個(gè)節(jié)點(diǎn)信息,從而找到代碼中的關(guān)鍵狀態(tài)變量、關(guān)鍵狀態(tài)變量的計(jì)算表達(dá)式以及謂詞表達(dá)式中的判斷條件,并將它們分別添加到相應(yīng)的集合中。

    (5)構(gòu)建測(cè)試用例關(guān)聯(lián)矩陣。測(cè)試用例集中的每個(gè)測(cè)試用例對(duì)應(yīng)測(cè)試用例關(guān)聯(lián)矩陣的一行信息,多個(gè)測(cè)試用例構(gòu)成了測(cè)試用例關(guān)聯(lián)矩陣。測(cè)試用例關(guān)聯(lián)矩陣用M表示,M矩陣中每一行對(duì)應(yīng)一個(gè)測(cè)試用例的輸入?yún)?shù)、關(guān)鍵狀態(tài)變量、關(guān)鍵狀態(tài)變量的計(jì)算表達(dá)式和謂詞表達(dá)式中的判斷條件,形式化表示為式(1):

    Mi=(ti,,,) .

    (1)

    其中,ti表示測(cè)試用例中第i個(gè)測(cè)試用例的輸入?yún)?shù),V表示關(guān)鍵狀態(tài)變量的集合,E表示關(guān)鍵狀態(tài)變量的計(jì)算表達(dá)式集合,C表示謂詞表達(dá)式中的條件判斷的集合。

    (6)測(cè)試用例約簡(jiǎn)。本文采用的測(cè)試用例約簡(jiǎn)準(zhǔn)則是:任意二個(gè)測(cè)試用例ti,tk,如果對(duì)應(yīng)的謂詞表達(dá)式中的條件判斷的邏輯值完全相同,即=,那么這二個(gè)或多個(gè)測(cè)試用例屬于同一等價(jià)類的測(cè)試用例,具有相同或相似的測(cè)試效果,可以選取其中的一個(gè)作為約簡(jiǎn)后測(cè)試用例。

    該約簡(jiǎn)方案的整體流程框架,如圖1所示。

    圖1 約簡(jiǎn)方法流程框架

    3 主要算法實(shí)現(xiàn)

    在圖1所示的流程圖中,主要有二個(gè)重要的算法:

    (1)在抽象語(yǔ)法樹(shù)中獲取關(guān)鍵狀態(tài)變量;

    (2)在測(cè)試用例關(guān)聯(lián)矩陣中查找并移除等效的測(cè)試用例,實(shí)現(xiàn)測(cè)試用例約簡(jiǎn)。

    3.1 基于抽象語(yǔ)法樹(shù)的信息提取

    任何一個(gè)C程序文件都可以轉(zhuǎn)換為抽象語(yǔ)法樹(shù)的樹(shù)狀結(jié)構(gòu),任意一個(gè)包括一個(gè)變量和一個(gè)方法的C程序文件的樹(shù)形結(jié)構(gòu),如圖2所示。利用抽象語(yǔ)法樹(shù)中提供的方法可以獲取樹(shù)中的各個(gè)節(jié)點(diǎn)。

    為獲取關(guān)鍵狀態(tài)變量、關(guān)鍵狀態(tài)變量的計(jì)算表達(dá)式以及謂詞表達(dá)式中的判斷條件,需要從抽象語(yǔ)法樹(shù)中找到與其相關(guān)的3類節(jié)點(diǎn):params節(jié)點(diǎn)、IfStatement節(jié)點(diǎn)以及ExpressionStatement節(jié)點(diǎn)。針對(duì)這3類不同的節(jié)點(diǎn)分別找出關(guān)鍵狀態(tài)變量、關(guān)鍵狀態(tài)變量的計(jì)算表達(dá)式和謂詞表達(dá)式中的判斷條件集合,并分別將其添加到相應(yīng)的集合。算法1給出了獲取關(guān)鍵狀態(tài)變量集合、關(guān)鍵狀態(tài)變量的計(jì)算表達(dá)式集合以及謂詞表達(dá)式中的判斷條件集合的算法。

    圖2 抽象語(yǔ)法樹(shù)

    算法1基于抽象語(yǔ)法樹(shù)的信息提取算法

    輸入預(yù)處理后的程序源代碼的抽象語(yǔ)法樹(shù)。

    輸出關(guān)鍵狀態(tài)變量集合keyVariable,關(guān)鍵狀態(tài)變量的計(jì)算表達(dá)式集合comExpression,謂詞表達(dá)式中的判斷條件集合conExpression。

    (1)算法以root為根節(jié)點(diǎn);

    (2)初始化關(guān)鍵狀態(tài)變量集合keyVariable = null,關(guān)鍵狀態(tài)變量的計(jì)算表達(dá)式集合comExpression = null,謂詞表達(dá)式中的判斷條件集合conExpression=null,根root入隊(duì)enqueue(root);

    (3) 循環(huán)queue中的元素。取出隊(duì)首元素,如果為空,轉(zhuǎn)(8),算法結(jié)束,否則轉(zhuǎn)(4);

    (4)如果該節(jié)點(diǎn)的節(jié)點(diǎn)類型是IfStatement,找到該節(jié)點(diǎn)下的表達(dá)式,并將該節(jié)點(diǎn)添加到謂詞表達(dá)式中的判斷條件集合conExpression中,并將該節(jié)點(diǎn)下的變量放入一個(gè)set集合中;

    (5)如果該節(jié)點(diǎn)的節(jié)點(diǎn)類型是VariableDeclaration或者params或者Identifier,并且該變量在(4)的set中出現(xiàn)過(guò),將該節(jié)點(diǎn)添加到關(guān)鍵狀態(tài)變量集合keyVariable中;

    (6)如果該節(jié)點(diǎn)的節(jié)點(diǎn)類型是BinaryExpression或者CallExpression或者UnaryExpression。繼續(xù)向下判斷,若該節(jié)點(diǎn)包括符號(hào)“<”,“>”,“<=”,“>=”,“!=”,“==”,找到該節(jié)點(diǎn)下的表達(dá)式,并將該節(jié)點(diǎn)添加到謂詞表達(dá)式中的判斷條件集合conExpression中;若該節(jié)點(diǎn)包括符號(hào)“=”,找到該節(jié)點(diǎn)下的表達(dá)式,并將該節(jié)點(diǎn)添加到關(guān)鍵狀態(tài)變量的計(jì)算表達(dá)式集合comExpression中;

    (7)如果該節(jié)點(diǎn)的節(jié)點(diǎn)類型不屬于以上節(jié)點(diǎn),則把該節(jié)點(diǎn)的子節(jié)點(diǎn)入隊(duì);

    (8) 算法結(jié)束。

    通過(guò)算法1可以獲取測(cè)試用例關(guān)聯(lián)矩陣M中的關(guān)鍵狀態(tài)變量集合、關(guān)鍵狀態(tài)變量的計(jì)算表達(dá)式集合以及謂詞表達(dá)式中的判斷條件集合。

    3.2 基于測(cè)試用例關(guān)聯(lián)矩陣的約簡(jiǎn)

    3.2.1 構(gòu)建測(cè)試用例關(guān)聯(lián)矩陣

    測(cè)試用例關(guān)聯(lián)矩陣的列由關(guān)鍵狀態(tài)變量集合、關(guān)鍵狀態(tài)變量的計(jì)算表達(dá)式集合以及謂詞表達(dá)式中的判斷條件集合中的每個(gè)元素組成,每個(gè)測(cè)試用例的輸入值、關(guān)鍵狀態(tài)變量集合、關(guān)鍵狀態(tài)變量的計(jì)算表達(dá)式集合以及謂詞表達(dá)式中的判斷條件集合構(gòu)成測(cè)試用例關(guān)聯(lián)矩陣的每一行,n個(gè)測(cè)試用例構(gòu)成了測(cè)試用例關(guān)聯(lián)矩陣。圖3給出了一個(gè)測(cè)試用例關(guān)聯(lián)矩陣示例。

    圖3 測(cè)試用例關(guān)聯(lián)矩陣示例

    構(gòu)造測(cè)試用例關(guān)聯(lián)矩陣的輸入可以概括為:測(cè)試用例集T={t1,t2,t3,…,tm},由算法1中得到的關(guān)鍵狀態(tài)變量集合、關(guān)鍵狀態(tài)變量的計(jì)算表達(dá)式集合以及謂詞表達(dá)式中的判斷條件集合,其數(shù)學(xué)表達(dá)式為式(1)。

    在圖3的示例中,t1,t2,t3,t4表示4個(gè)測(cè)試用例,每個(gè)測(cè)試用例有3個(gè)輸入?yún)?shù):a、b、c;a1=a*2和a2=c*3表示代碼中的計(jì)算表達(dá)式;a-b>4,a1>5,a2>2則表示謂詞表達(dá)式中的判斷條件。

    3.2.2 測(cè)試用例約簡(jiǎn)算法

    根據(jù)本文所提出的測(cè)試用例約簡(jiǎn)準(zhǔn)則對(duì)測(cè)試用例關(guān)聯(lián)矩陣進(jìn)行約簡(jiǎn),算法2給出了測(cè)試用例關(guān)聯(lián)矩陣的約簡(jiǎn)描述。

    算法2測(cè)試用例關(guān)聯(lián)矩陣中測(cè)試用例的約簡(jiǎn)

    輸入測(cè)試用例關(guān)聯(lián)矩陣M

    輸出約簡(jiǎn)后的測(cè)試用例關(guān)聯(lián)矩陣M'

    (1)for eachito row // row是測(cè)試用例關(guān)聯(lián)矩陣的行數(shù)

    (2) for eachj=i+ 1 to row

    (3) 如果第i行和第j行的測(cè)試用例對(duì)應(yīng)的謂詞表達(dá)式中的判斷條件集合中的每一列的結(jié)果值都相同,表示第i行和第j行的測(cè)試用例具有相同或相似的功能,保留第i行的測(cè)試用例

    (4) end for

    (5) end for

    4 實(shí)驗(yàn)分析

    4.1 實(shí)驗(yàn)數(shù)據(jù)及評(píng)價(jià)指標(biāo)

    本文選擇了西門(mén)子測(cè)試用例集中4個(gè)程序作為實(shí)驗(yàn)對(duì)象來(lái)驗(yàn)證本文所提出的測(cè)試用例約簡(jiǎn)的方法。為了評(píng)估本文所提出的方法的有效性,將本文算法與傳統(tǒng)HGS算法和貪心算法(Greedy, G算法)從約簡(jiǎn)率作對(duì)比和分析。約簡(jiǎn)率的計(jì)算公式(2)。

    (2)

    其中:|OriginalTestSuite|表示原測(cè)試用例集中測(cè)試用例數(shù)量,|T*|表示約簡(jiǎn)后測(cè)試用例集中測(cè)試用例的數(shù)量,約簡(jiǎn)率越大則約簡(jiǎn)程度越高。

    西門(mén)子測(cè)試用例集中4個(gè)程序的程序集信息如見(jiàn)表1。schedule2是優(yōu)先級(jí)調(diào)度器;tcas是防止航空器空中相撞系統(tǒng)[8];print_tokens和print_tokens2主要用于詞法分析。

    表1 西門(mén)子程序集信息

    4.2 實(shí)驗(yàn)方案

    實(shí)驗(yàn)的具體方案:

    (1) 按不同的功能及輸入?yún)?shù)的參數(shù)列表分別將四個(gè)開(kāi)源程序中的測(cè)試用例集進(jìn)行聚類,確定每一類測(cè)試用例集所對(duì)應(yīng)的程序源代碼;

    (2)將對(duì)應(yīng)的程序源代碼預(yù)處理,將預(yù)處理后的源代碼轉(zhuǎn)換成抽象語(yǔ)法樹(shù),再使用本文所提出的算法1獲取關(guān)鍵狀態(tài)變量集合、關(guān)鍵狀態(tài)變量的計(jì)算表達(dá)式集合以及謂詞表達(dá)式中的判斷條件集合;

    (3)構(gòu)建測(cè)試用例與關(guān)鍵狀態(tài)變量集合、關(guān)鍵狀態(tài)變量的計(jì)算表達(dá)式集合以及謂詞表達(dá)式中的判斷條件集合的測(cè)試用例關(guān)聯(lián)矩陣,再計(jì)算測(cè)試用例關(guān)聯(lián)矩陣中每一項(xiàng)所對(duì)應(yīng)的值,最后根據(jù)測(cè)試用例約簡(jiǎn)準(zhǔn)則對(duì)其進(jìn)行約簡(jiǎn)。

    4.3 實(shí)驗(yàn)結(jié)果和分析

    實(shí)驗(yàn)結(jié)果如圖4所示,可以看出本文所提出的算法可以有效的減少原測(cè)試用例集數(shù)量。

    圖4 3種算法的測(cè)試用例約簡(jiǎn)率

    3種算法約簡(jiǎn)后的測(cè)試用例數(shù)量見(jiàn)表2。

    表2 約簡(jiǎn)后測(cè)試用例的數(shù)量

    通過(guò)對(duì)西門(mén)子測(cè)試用例集中4個(gè)開(kāi)源程序自帶的測(cè)試用例集進(jìn)行實(shí)驗(yàn),本文所提算法對(duì)每個(gè)程序中的原測(cè)試用例數(shù)量都有不同程度程度的減少,測(cè)試用例數(shù)量的約簡(jiǎn)率還與原測(cè)試用例集中冗余測(cè)試用例數(shù)量的多少相關(guān)。

    本文所提出的方法在保證測(cè)試用例集完整性的基礎(chǔ)上減少了測(cè)試用例的數(shù)量。實(shí)驗(yàn)中針對(duì)約簡(jiǎn)掉的每個(gè)測(cè)試用例都經(jīng)過(guò)了人工檢測(cè),通過(guò)對(duì)比測(cè)試用例關(guān)聯(lián)矩陣中的測(cè)試用例,判斷測(cè)試用例關(guān)聯(lián)矩陣中存在與被約簡(jiǎn)的測(cè)試用例的每一列對(duì)應(yīng)的值都是相同的,運(yùn)行被約簡(jiǎn)的測(cè)試用例,進(jìn)一步證實(shí)了這些測(cè)試用例集確實(shí)不能檢測(cè)到程序中存在的缺陷。但本文算法涉及到的步驟相對(duì)較多,會(huì)增加計(jì)算方面的開(kāi)銷。

    5 結(jié)束語(yǔ)

    測(cè)試用例的約簡(jiǎn)是軟件測(cè)試中一項(xiàng)非常重要的工作,約簡(jiǎn)測(cè)試用例可以極大地減少測(cè)試成本,因此對(duì)測(cè)試用例約簡(jiǎn)的研究具有十分重要的意義。

    本文提出一種基于謂詞分析和關(guān)鍵狀態(tài)變量的測(cè)試用例約簡(jiǎn)方法,主要考慮了變量對(duì)測(cè)試路徑的影響,提出一種基于謂詞分析和關(guān)鍵狀態(tài)變量的測(cè)試用例約簡(jiǎn)方法,主要考慮了變量對(duì)測(cè)試路徑的影響。該方法通過(guò)捕獲源代碼中與關(guān)鍵狀態(tài)變量相關(guān)語(yǔ)句和謂詞表達(dá)式中的判斷條件之間的關(guān)系來(lái)構(gòu)造測(cè)試用例和關(guān)鍵狀態(tài)變量、關(guān)鍵狀態(tài)變量計(jì)算表達(dá)

    式以及謂詞表達(dá)式中判斷條件之間的測(cè)試用例關(guān)聯(lián)矩陣,并提出了測(cè)試用例約簡(jiǎn)的準(zhǔn)則,根據(jù)該準(zhǔn)則對(duì)測(cè)試用例集進(jìn)行約簡(jiǎn)。實(shí)驗(yàn)結(jié)果表明,本文所提出的約簡(jiǎn)策略可以對(duì)原測(cè)試用例集的數(shù)量進(jìn)行約簡(jiǎn),而且并沒(méi)有降低原測(cè)試用例集的錯(cuò)誤檢測(cè)率,但增加了計(jì)算開(kāi)銷。

    基于代碼分析的測(cè)試用例約簡(jiǎn)所涉及測(cè)試路徑以及本文所提的關(guān)鍵狀態(tài)變量、謂詞表達(dá)式中的判斷條件等因素,是一個(gè)十分復(fù)雜的問(wèn)題,如果程序中包含程序間調(diào)用、數(shù)據(jù)庫(kù)交互等更加復(fù)雜的場(chǎng)景,研究方案仍需要進(jìn)一步完善。另外,文本所做的驗(yàn)證實(shí)驗(yàn)只是在西門(mén)子測(cè)試用例套件中選取的四個(gè)程序所自帶的測(cè)試數(shù)據(jù)集上完成的,這4個(gè)程序的源代碼規(guī)模較小,本方法的有效性還需要進(jìn)行大規(guī)模的實(shí)驗(yàn)加以驗(yàn)證。

    猜你喜歡
    關(guān)聯(lián)矩陣狀態(tài)變量謂詞
    一階動(dòng)態(tài)電路零狀態(tài)響應(yīng)公式的通用拓展
    基于TwinCAT3控制系統(tǒng)的YB518型小盒透明紙包裝機(jī)運(yùn)行速度的控制分析
    n階圈圖關(guān)聯(lián)矩陣的特征值
    單圈圖關(guān)聯(lián)矩陣的特征值
    基于嵌套思路的飽和孔隙-裂隙介質(zhì)本構(gòu)理論
    被遮蔽的邏輯謂詞
    ——論胡好對(duì)邏輯謂詞的誤讀
    黨項(xiàng)語(yǔ)謂詞前綴的分裂式
    西夏研究(2020年2期)2020-06-01 05:19:12
    基于關(guān)聯(lián)矩陣主對(duì)角線譜理論的歐拉圖研究
    n階圈圖的一些代數(shù)性質(zhì)
    也談“語(yǔ)言是存在的家”——從語(yǔ)言的主詞與謂詞看存在的殊相與共相
    欧美3d第一页| 特级一级黄色大片| 国产av一区在线观看免费| 国产成人aa在线观看| 免费看十八禁软件| 成人性生交大片免费视频hd| 18美女黄网站色大片免费观看| 亚洲成a人片在线一区二区| 亚洲av电影不卡..在线观看| 日韩大尺度精品在线看网址| 色老头精品视频在线观看| 悠悠久久av| 国产真人三级小视频在线观看| 日韩欧美精品v在线| 日韩成人在线观看一区二区三区| 国产精品一区二区三区四区久久| 91久久精品国产一区二区成人 | 伊人久久大香线蕉亚洲五| 精品久久久久久,| 他把我摸到了高潮在线观看| 亚洲狠狠婷婷综合久久图片| 久9热在线精品视频| 欧美成人免费av一区二区三区| 看免费av毛片| av天堂中文字幕网| 亚洲精品在线观看二区| 久久精品亚洲精品国产色婷小说| 国产一区在线观看成人免费| 人妻夜夜爽99麻豆av| 老熟妇乱子伦视频在线观看| 啦啦啦观看免费观看视频高清| 免费在线观看成人毛片| 成人特级av手机在线观看| 精品久久久久久,| 久久久久久人人人人人| 午夜两性在线视频| 超碰成人久久| 亚洲无线观看免费| 免费在线观看日本一区| 亚洲欧洲精品一区二区精品久久久| 性欧美人与动物交配| 亚洲欧美激情综合另类| 后天国语完整版免费观看| 成人鲁丝片一二三区免费| 夜夜躁狠狠躁天天躁| 啦啦啦韩国在线观看视频| 亚洲av片天天在线观看| 婷婷精品国产亚洲av在线| 久久精品夜夜夜夜夜久久蜜豆| 久久香蕉国产精品| 一个人观看的视频www高清免费观看 | 97超视频在线观看视频| 一边摸一边抽搐一进一小说| 亚洲avbb在线观看| 老司机深夜福利视频在线观看| 悠悠久久av| 国产精品久久久av美女十八| av欧美777| 露出奶头的视频| 一本久久中文字幕| 蜜桃久久精品国产亚洲av| 99久久99久久久精品蜜桃| 欧美三级亚洲精品| 国产精品一及| 国模一区二区三区四区视频 | 免费在线观看影片大全网站| 亚洲美女视频黄频| 午夜亚洲福利在线播放| 男插女下体视频免费在线播放| 成年免费大片在线观看| 香蕉久久夜色| 18禁观看日本| 视频区欧美日本亚洲| 亚洲18禁久久av| 日本a在线网址| 在线免费观看不下载黄p国产 | 最近在线观看免费完整版| 欧美黄色淫秽网站| 欧美日韩国产亚洲二区| 国产精品综合久久久久久久免费| 欧美性猛交黑人性爽| 久久久国产成人免费| 午夜久久久久精精品| 色老头精品视频在线观看| 久久久国产欧美日韩av| a级毛片a级免费在线| 禁无遮挡网站| 精品国产乱子伦一区二区三区| 成人高潮视频无遮挡免费网站| 好男人电影高清在线观看| 一个人免费在线观看的高清视频| 后天国语完整版免费观看| 中文字幕最新亚洲高清| 亚洲色图av天堂| 日韩欧美国产一区二区入口| 亚洲狠狠婷婷综合久久图片| 可以在线观看的亚洲视频| 99热这里只有精品一区 | 国产av麻豆久久久久久久| 免费看光身美女| av中文乱码字幕在线| 免费av毛片视频| 听说在线观看完整版免费高清| 亚洲国产色片| 少妇的逼水好多| 午夜免费成人在线视频| 精品国产乱码久久久久久男人| 在线看三级毛片| 真人做人爱边吃奶动态| 午夜免费成人在线视频| 欧美日韩乱码在线| 欧美成人免费av一区二区三区| 怎么达到女性高潮| 18禁观看日本| 一个人观看的视频www高清免费观看 | 香蕉国产在线看| 国产单亲对白刺激| 少妇熟女aⅴ在线视频| 午夜免费成人在线视频| 国产私拍福利视频在线观看| 91av网站免费观看| 色视频www国产| 日本在线视频免费播放| 一区二区三区激情视频| 波多野结衣高清作品| 丝袜人妻中文字幕| 亚洲av成人精品一区久久| 9191精品国产免费久久| 老熟妇仑乱视频hdxx| 天堂动漫精品| 国产麻豆成人av免费视频| 99久久精品一区二区三区| 成年女人看的毛片在线观看| 亚洲精品美女久久久久99蜜臀| 亚洲av免费在线观看| 草草在线视频免费看| 99国产极品粉嫩在线观看| 国产免费av片在线观看野外av| 成人特级av手机在线观看| 黄片大片在线免费观看| 在线看三级毛片| 日韩欧美国产在线观看| 国产免费男女视频| 一个人看的www免费观看视频| 身体一侧抽搐| 在线观看一区二区三区| 欧美性猛交╳xxx乱大交人| 99riav亚洲国产免费| 亚洲成a人片在线一区二区| 国产又黄又爽又无遮挡在线| 老熟妇乱子伦视频在线观看| 欧美日本亚洲视频在线播放| 国产精品精品国产色婷婷| 日本撒尿小便嘘嘘汇集6| 亚洲中文日韩欧美视频| 国内少妇人妻偷人精品xxx网站 | 国产欧美日韩一区二区三| 亚洲av日韩精品久久久久久密| 久久九九热精品免费| 国产精品久久久久久亚洲av鲁大| 亚洲国产精品sss在线观看| 亚洲国产欧美人成| 欧美在线一区亚洲| 中文字幕精品亚洲无线码一区| 亚洲欧美精品综合久久99| 免费在线观看日本一区| 一级毛片精品| 不卡av一区二区三区| 日韩欧美 国产精品| 欧美在线黄色| bbb黄色大片| 热99re8久久精品国产| 熟女人妻精品中文字幕| 精品99又大又爽又粗少妇毛片 | 一本久久中文字幕| 中文字幕精品亚洲无线码一区| svipshipincom国产片| 成人一区二区视频在线观看| 成人国产综合亚洲| 国产高潮美女av| 男女下面进入的视频免费午夜| 国产精品日韩av在线免费观看| 啪啪无遮挡十八禁网站| 老司机午夜十八禁免费视频| 日本三级黄在线观看| 亚洲av成人精品一区久久| 久久精品亚洲精品国产色婷小说| 日韩中文字幕欧美一区二区| 无遮挡黄片免费观看| 亚洲精品美女久久av网站| 两人在一起打扑克的视频| 亚洲精品一卡2卡三卡4卡5卡| АⅤ资源中文在线天堂| 蜜桃久久精品国产亚洲av| 动漫黄色视频在线观看| 十八禁网站免费在线| 很黄的视频免费| 熟妇人妻久久中文字幕3abv| 97超视频在线观看视频| 亚洲欧美激情综合另类| 一二三四在线观看免费中文在| 九色成人免费人妻av| 久99久视频精品免费| 欧美日本视频| 一二三四社区在线视频社区8| 首页视频小说图片口味搜索| 国产成人aa在线观看| 搞女人的毛片| 国产精品一及| 观看美女的网站| 美女 人体艺术 gogo| 亚洲人成网站高清观看| 成人国产一区最新在线观看| 久久香蕉国产精品| 久久久色成人| 国产人伦9x9x在线观看| 国产高潮美女av| 成在线人永久免费视频| 国产av一区在线观看免费| 国产99白浆流出| 亚洲av日韩精品久久久久久密| 桃色一区二区三区在线观看| 久久精品亚洲精品国产色婷小说| 热99在线观看视频| 99精品久久久久人妻精品| 中文在线观看免费www的网站| 不卡av一区二区三区| 他把我摸到了高潮在线观看| 日韩有码中文字幕| 激情在线观看视频在线高清| 男女床上黄色一级片免费看| 久久久久性生活片| 欧美激情久久久久久爽电影| 国产av不卡久久| 在线看三级毛片| 日韩精品中文字幕看吧| 十八禁网站免费在线| 日本撒尿小便嘘嘘汇集6| 欧美日韩瑟瑟在线播放| 久久久水蜜桃国产精品网| 在线观看日韩欧美| 小说图片视频综合网站| 国产三级黄色录像| 熟女少妇亚洲综合色aaa.| 亚洲中文字幕日韩| 国产精品精品国产色婷婷| 老司机福利观看| 欧美日韩瑟瑟在线播放| www.自偷自拍.com| 最近最新中文字幕大全免费视频| 色av中文字幕| 亚洲自拍偷在线| 这个男人来自地球电影免费观看| 午夜日韩欧美国产| 色综合亚洲欧美另类图片| 成人av在线播放网站| 欧美乱码精品一区二区三区| 在线永久观看黄色视频| 又爽又黄无遮挡网站| 黑人巨大精品欧美一区二区mp4| 亚洲中文av在线| 99久国产av精品| 国产亚洲av高清不卡| 色综合站精品国产| 国产高清videossex| 色哟哟哟哟哟哟| 日韩av在线大香蕉| 人人妻人人看人人澡| 亚洲国产看品久久| 99久久国产精品久久久| 国产黄片美女视频| 露出奶头的视频| 久久精品国产99精品国产亚洲性色| 国产精品亚洲一级av第二区| 久久久国产精品麻豆| 午夜福利成人在线免费观看| 国产乱人视频| 51午夜福利影视在线观看| 国产成人啪精品午夜网站| 亚洲专区字幕在线| www日本黄色视频网| 国内精品美女久久久久久| 天天躁狠狠躁夜夜躁狠狠躁| 欧美日韩乱码在线| 美女 人体艺术 gogo| 精品国产乱子伦一区二区三区| 色老头精品视频在线观看| 中文字幕人成人乱码亚洲影| 99国产综合亚洲精品| 亚洲人与动物交配视频| 国产探花在线观看一区二区| www.自偷自拍.com| 一进一出好大好爽视频| 一个人免费在线观看电影 | 搡老熟女国产l中国老女人| 亚洲精品在线美女| 婷婷精品国产亚洲av在线| 一个人观看的视频www高清免费观看 | 欧美成狂野欧美在线观看| 亚洲欧美精品综合久久99| 欧美日韩精品网址| 亚洲欧美日韩无卡精品| 男插女下体视频免费在线播放| 欧美绝顶高潮抽搐喷水| 久久香蕉精品热| 国产精品精品国产色婷婷| 制服人妻中文乱码| 国产一级毛片七仙女欲春2| 日韩欧美免费精品| 精品日产1卡2卡| 老汉色∧v一级毛片| 国产精品,欧美在线| 18禁美女被吸乳视频| 日本黄色片子视频| 欧美高清成人免费视频www| 日本免费一区二区三区高清不卡| 亚洲精品中文字幕一二三四区| 男女之事视频高清在线观看| 成熟少妇高潮喷水视频| 国产精品99久久久久久久久| 男人舔女人的私密视频| 欧美黄色片欧美黄色片| 国产精品精品国产色婷婷| 熟女人妻精品中文字幕| 国产成人啪精品午夜网站| 国产精品98久久久久久宅男小说| 九九久久精品国产亚洲av麻豆 | 给我免费播放毛片高清在线观看| 亚洲精品456在线播放app | 天堂网av新在线| 一级黄色大片毛片| 日韩欧美精品v在线| 国内毛片毛片毛片毛片毛片| 亚洲第一欧美日韩一区二区三区| 久久久久久九九精品二区国产| 老鸭窝网址在线观看| 麻豆成人午夜福利视频| 欧美日韩瑟瑟在线播放| 俄罗斯特黄特色一大片| 免费在线观看日本一区| 999久久久精品免费观看国产| 热99在线观看视频| 日本一二三区视频观看| 亚洲av成人一区二区三| 亚洲 欧美 日韩 在线 免费| 亚洲人成电影免费在线| av黄色大香蕉| 99国产精品99久久久久| ponron亚洲| 亚洲av第一区精品v没综合| www.精华液| 999久久久国产精品视频| 嫩草影院精品99| 校园春色视频在线观看| 人妻夜夜爽99麻豆av| 国产亚洲欧美在线一区二区| av片东京热男人的天堂| 免费av不卡在线播放| 婷婷六月久久综合丁香| 男插女下体视频免费在线播放| 免费观看精品视频网站| 欧美日本亚洲视频在线播放| 宅男免费午夜| 国产成人影院久久av| 国产成人av激情在线播放| 无遮挡黄片免费观看| 男人和女人高潮做爰伦理| 欧美最黄视频在线播放免费| 亚洲国产看品久久| 一级作爱视频免费观看| 国产精品国产高清国产av| 亚洲精品国产精品久久久不卡| 欧洲精品卡2卡3卡4卡5卡区| 国产乱人视频| 免费搜索国产男女视频| 一级毛片精品| 草草在线视频免费看| 蜜桃久久精品国产亚洲av| 日本 av在线| 日本在线视频免费播放| 国产精品免费一区二区三区在线| 亚洲在线自拍视频| 国产一区二区激情短视频| 丁香六月欧美| 精品久久久久久久毛片微露脸| 91在线观看av| 日日干狠狠操夜夜爽| 国产毛片a区久久久久| 又大又爽又粗| 亚洲va日本ⅴa欧美va伊人久久| 老汉色av国产亚洲站长工具| 色尼玛亚洲综合影院| 午夜两性在线视频| 日韩欧美免费精品| 日韩欧美在线乱码| 在线观看美女被高潮喷水网站 | 黑人巨大精品欧美一区二区mp4| 日本a在线网址| 99久久99久久久精品蜜桃| 亚洲精品美女久久av网站| svipshipincom国产片| 国产精品久久久av美女十八| 亚洲一区高清亚洲精品| 欧美+亚洲+日韩+国产| 99在线视频只有这里精品首页| 中文亚洲av片在线观看爽| 亚洲精品粉嫩美女一区| 国产激情偷乱视频一区二区| 国产高清视频在线观看网站| 观看免费一级毛片| 91麻豆精品激情在线观看国产| 国产欧美日韩一区二区精品| 国产高清视频在线播放一区| tocl精华| 人妻夜夜爽99麻豆av| 美女cb高潮喷水在线观看 | 国产成人福利小说| 成人精品一区二区免费| 国产成人福利小说| 成人欧美大片| 日本精品一区二区三区蜜桃| 欧美国产日韩亚洲一区| 巨乳人妻的诱惑在线观看| 欧美成狂野欧美在线观看| 手机成人av网站| 国产高清有码在线观看视频| 亚洲自偷自拍图片 自拍| 亚洲av电影在线进入| 99热精品在线国产| 国产精品av久久久久免费| 一级毛片高清免费大全| 久久精品综合一区二区三区| 真人做人爱边吃奶动态| 免费高清视频大片| 精品久久久久久久人妻蜜臀av| 国产精品日韩av在线免费观看| 看免费av毛片| 久久香蕉国产精品| 国产精品电影一区二区三区| 天天添夜夜摸| 国产精品亚洲美女久久久| 欧美性猛交╳xxx乱大交人| 少妇的逼水好多| 久久久水蜜桃国产精品网| 久久精品国产综合久久久| 欧美日韩中文字幕国产精品一区二区三区| 99国产精品99久久久久| 国产精品爽爽va在线观看网站| 国产精品电影一区二区三区| 最近视频中文字幕2019在线8| netflix在线观看网站| 欧美丝袜亚洲另类 | 一级a爱片免费观看的视频| 97超级碰碰碰精品色视频在线观看| 午夜视频精品福利| 69av精品久久久久久| 九色国产91popny在线| 精品国产美女av久久久久小说| 国产激情久久老熟女| 啦啦啦免费观看视频1| 欧美午夜高清在线| 国产 一区 欧美 日韩| 国产午夜精品久久久久久| 天堂av国产一区二区熟女人妻| 亚洲精品国产精品久久久不卡| 久久久精品大字幕| 在线免费观看的www视频| 一级毛片女人18水好多| 国产一区二区激情短视频| 窝窝影院91人妻| 国产黄a三级三级三级人| 国产激情欧美一区二区| 国产黄a三级三级三级人| 精品久久久久久久久久免费视频| 18禁国产床啪视频网站| 欧美中文综合在线视频| 男女下面进入的视频免费午夜| 亚洲男人的天堂狠狠| 男人舔女人下体高潮全视频| 亚洲第一电影网av| 亚洲熟妇中文字幕五十中出| 99久久精品一区二区三区| 琪琪午夜伦伦电影理论片6080| 成人精品一区二区免费| 最近视频中文字幕2019在线8| 久久精品亚洲精品国产色婷小说| 欧美性猛交╳xxx乱大交人| 天堂av国产一区二区熟女人妻| 天天添夜夜摸| 又黄又粗又硬又大视频| 亚洲熟妇熟女久久| 成人一区二区视频在线观看| 女生性感内裤真人,穿戴方法视频| 99国产精品99久久久久| 国产亚洲精品久久久com| 亚洲一区二区三区不卡视频| 国产精品精品国产色婷婷| 日韩精品中文字幕看吧| 欧美色视频一区免费| 国产男靠女视频免费网站| 精品99又大又爽又粗少妇毛片 | 成人精品一区二区免费| 色播亚洲综合网| av在线蜜桃| 又爽又黄无遮挡网站| 国产91精品成人一区二区三区| 小蜜桃在线观看免费完整版高清| 最近最新中文字幕大全免费视频| 午夜福利在线观看免费完整高清在 | 999久久久精品免费观看国产| 日本撒尿小便嘘嘘汇集6| 九九久久精品国产亚洲av麻豆 | 日韩欧美一区二区三区在线观看| 99国产精品99久久久久| 嫩草影院入口| 欧美+亚洲+日韩+国产| www.精华液| 女生性感内裤真人,穿戴方法视频| 欧美日韩瑟瑟在线播放| 国产精品久久久久久人妻精品电影| 欧美不卡视频在线免费观看| 老鸭窝网址在线观看| 在线观看66精品国产| 热99在线观看视频| 听说在线观看完整版免费高清| 精品国内亚洲2022精品成人| 在线免费观看的www视频| 国产aⅴ精品一区二区三区波| 久久天堂一区二区三区四区| svipshipincom国产片| 国产男靠女视频免费网站| 美女高潮的动态| 色在线成人网| 又爽又黄无遮挡网站| 日韩欧美精品v在线| 免费在线观看成人毛片| 成人av一区二区三区在线看| av女优亚洲男人天堂 | 少妇裸体淫交视频免费看高清| 亚洲av成人一区二区三| 国产一区二区三区在线臀色熟女| 丁香六月欧美| 国产精品爽爽va在线观看网站| 亚洲午夜理论影院| 精品久久久久久久毛片微露脸| 亚洲av片天天在线观看| 舔av片在线| 国产精品亚洲美女久久久| 国产精品女同一区二区软件 | 在线视频色国产色| 亚洲精品456在线播放app | 啪啪无遮挡十八禁网站| ponron亚洲| 久久伊人香网站| 90打野战视频偷拍视频| 三级男女做爰猛烈吃奶摸视频| 无人区码免费观看不卡| 午夜免费观看网址| 一本综合久久免费| 又大又爽又粗| 日韩成人在线观看一区二区三区| 国产成人av激情在线播放| 欧美成人性av电影在线观看| 精品电影一区二区在线| 国产精品 欧美亚洲| 国产精品自产拍在线观看55亚洲| 日本黄色视频三级网站网址| 久久久久国产一级毛片高清牌| 日韩三级视频一区二区三区| 国产精品一区二区三区四区免费观看 | 美女 人体艺术 gogo| 在线永久观看黄色视频| 国产成+人综合+亚洲专区| 两性夫妻黄色片| 美女大奶头视频| 日韩大尺度精品在线看网址| 男女视频在线观看网站免费| 精品人妻1区二区| 91老司机精品| 欧美成人性av电影在线观看| 好男人电影高清在线观看| www.熟女人妻精品国产| 久久中文字幕人妻熟女| 亚洲一区二区三区色噜噜| 婷婷丁香在线五月| 成人特级av手机在线观看| 午夜两性在线视频| 婷婷丁香在线五月| 亚洲无线在线观看| 亚洲欧美日韩东京热| 午夜免费激情av| 97碰自拍视频| 亚洲av成人精品一区久久| 69av精品久久久久久| 国产精品影院久久| 亚洲在线观看片| 亚洲aⅴ乱码一区二区在线播放| 精品电影一区二区在线| 一本精品99久久精品77| 狠狠狠狠99中文字幕| 国产三级中文精品| 久久人妻av系列| 两个人视频免费观看高清| 波多野结衣高清无吗| 国产精品一区二区免费欧美| 亚洲av第一区精品v没综合| 午夜两性在线视频| 非洲黑人性xxxx精品又粗又长| 在线视频色国产色| 制服人妻中文乱码| 亚洲狠狠婷婷综合久久图片| 身体一侧抽搐| 亚洲国产精品久久男人天堂| 久久中文字幕人妻熟女| 国产精品综合久久久久久久免费|