齊建業(yè),李 強(qiáng),余 祥
(電子工程學(xué)院,安徽 合肥230037)
對(duì)協(xié)議進(jìn)行一致性測(cè)試,通過(guò)有限狀態(tài)機(jī)(finite state machine,F(xiàn)SM)對(duì)協(xié)議標(biāo)準(zhǔn)文本描述進(jìn)行形式化分析,由于主觀上的理解可能會(huì)在建模中產(chǎn)生偏差,影響后續(xù)測(cè)試用例的生成。利用FSM 直接描述協(xié)議標(biāo)準(zhǔn)文本,轉(zhuǎn)化過(guò)程比較抽象,要求相對(duì)較高。由于UML 具有交互性強(qiáng)、直觀生動(dòng)的特點(diǎn),可以通過(guò)UML 圖自動(dòng)生成軟件測(cè)試用例[1]。因此,可以采用UML 中的活動(dòng)圖對(duì)被測(cè)協(xié)議標(biāo)準(zhǔn)的功能說(shuō)明進(jìn)行描述,進(jìn)而生成協(xié)議一致性測(cè)試的測(cè)試用例。
本文建立了協(xié)議一致性測(cè)試用例生成模型,由形式化活動(dòng)圖、擴(kuò)展有限狀態(tài)機(jī)和算法FADToEFSM 組成。通過(guò)形式化定義UML 活動(dòng)圖,可以將由自然語(yǔ)言描述的任意的協(xié)議標(biāo)準(zhǔn)文本轉(zhuǎn)化為形式化的活動(dòng)圖,降低了協(xié)議形式化分析的復(fù)雜程度。設(shè)計(jì)FADToEFSM 算法將形式化的活動(dòng)圖轉(zhuǎn)化為擴(kuò)展有限狀態(tài)機(jī)(extended finite state machine,EFSM),將EFSM 再轉(zhuǎn)化為測(cè)試用例,上述兩個(gè)轉(zhuǎn)化過(guò)程按照數(shù)學(xué)運(yùn)算,消除了協(xié)議一致性測(cè)試覆蓋的不完備問(wèn)題。根據(jù)實(shí)際被測(cè)的協(xié)議實(shí)現(xiàn)產(chǎn)品說(shuō)明實(shí)例化測(cè)試數(shù)據(jù),生成協(xié)議一致性測(cè)試用例。
活動(dòng)圖是UML模型中用于對(duì)系統(tǒng)的動(dòng)態(tài)行為建模的一種圖形工具,它或是對(duì)活動(dòng)的序列進(jìn)行描述,或是描述對(duì)活動(dòng)控制轉(zhuǎn)化進(jìn)行描述。UML 對(duì)動(dòng)態(tài)語(yǔ)義的描述不是十分清楚,例如一個(gè)活動(dòng)圖的節(jié)點(diǎn)可以描述事件、退出、入口以及執(zhí)行等4 種動(dòng)作,具體是哪一種動(dòng)作,不清楚。因此,對(duì)活動(dòng)圖模型中若干圖形元素的語(yǔ)義和語(yǔ)法進(jìn)行形式化。
定義1 形式化活動(dòng)圖(formal activity diagram,F(xiàn)AD)[2]
通過(guò)圖像來(lái)描述協(xié)議實(shí)現(xiàn)之間的數(shù)據(jù)包交互關(guān)系:
FAD=<ID,Start,End,SA,IN,OUT,Judge,F(xiàn)L,Con>
(1)標(biāo)識(shí)ID:唯一地標(biāo)識(shí)一個(gè)FAD;
(2)系統(tǒng)動(dòng)作SA:描述數(shù)據(jù)包生成;
(3)輸出動(dòng)作OUT:描述數(shù)據(jù)包發(fā)送;
(4)輸入動(dòng)作IN:描述數(shù)據(jù)包捕獲;
(5)起始端點(diǎn)Start:描述FAD 的開(kāi)始狀態(tài),即START 事件,限定一個(gè)FAD 只有一個(gè)起始點(diǎn);
(6)結(jié)束端點(diǎn)End:描述FAD 的終結(jié)狀態(tài),即CLOSURE事件,限定一個(gè)FAD 只有一個(gè)結(jié)束點(diǎn);
(7)判斷框Judge:作為一種條件判斷,描述一個(gè)或者幾個(gè)進(jìn)口點(diǎn)、出口點(diǎn);
(8)連線FL:描述FAD 中兩個(gè)節(jié)點(diǎn)之間的控制流線條;
(9)聯(lián)系點(diǎn)Con:作為連線的連接部分,可以有一條或多條連線進(jìn)入,限定只有一個(gè)連線出口。
定義2 擴(kuò)展的有限狀態(tài)機(jī)(EFSM)[2]
擴(kuò)展有限狀態(tài)機(jī)EFSM 用五元組來(lái)表示:EFSM=(S,s0,sF,T,δ)。擴(kuò)展有限狀態(tài)機(jī)將形式化活動(dòng)圖轉(zhuǎn)換為轉(zhuǎn)移事件集合以及狀態(tài)集合。集合元素的唯一性,使得用同一語(yǔ)義的轉(zhuǎn)移事件或狀態(tài)時(shí),使用唯一的定義,從而避免了語(yǔ)義矛盾的產(chǎn)生。
根據(jù)EFSM 的定義,設(shè)計(jì)從FAD到EFSM 的轉(zhuǎn)換原則:
(1)將起始端點(diǎn)轉(zhuǎn)換為開(kāi)始狀態(tài)s0;
(2)將系統(tǒng)動(dòng)作轉(zhuǎn)換為EFSM 中的一個(gè)事件狀態(tài)和一個(gè)系統(tǒng)轉(zhuǎn)移Trig_SystemAction_Num;
(3)將輸入動(dòng)作轉(zhuǎn)換為一個(gè)空偽狀態(tài)St_Empty_Num 和一個(gè)輸入轉(zhuǎn)移;
(4)將輸出動(dòng)作轉(zhuǎn)換為EFSM 中的一個(gè)輸出狀態(tài)和一個(gè)自動(dòng)轉(zhuǎn)移Trig_Automation;
(5)將判斷框轉(zhuǎn)換為在EFSM 中增加一個(gè)St_Fork-Join_Num,根據(jù)出口判斷增加Trig_Constraint_Num 和空偽狀態(tài)St_Empty_Num;
(6)連接點(diǎn)只起到兩條流線之間的傳遞作用,沒(méi)有狀態(tài)轉(zhuǎn)化;
(7)將結(jié)束點(diǎn)轉(zhuǎn)化為結(jié)束狀態(tài)sF。
根據(jù)上述轉(zhuǎn)換規(guī)則,設(shè)計(jì)了將FAD 轉(zhuǎn)換為EFSM 的算法。
算法:EFSM 自動(dòng)生成produceEFSMFromFAD (fad)
算法原理:將形式化活動(dòng)圖中的圖元按照從初始點(diǎn)到結(jié)束點(diǎn)的順序添加到EFSM 中。如果EFSM 中沒(méi)有則增加一個(gè)新?tīng)顟B(tài),同時(shí)添加一個(gè)轉(zhuǎn)移事件;如果擴(kuò)展有限狀態(tài)機(jī)中已經(jīng)有相應(yīng)圖元轉(zhuǎn)化的狀態(tài),那么只增加一個(gè)轉(zhuǎn)移事件;如果是連接點(diǎn),不轉(zhuǎn)化,檢查并轉(zhuǎn)化下一個(gè)圖元。
輸入:FAD
輸出:EFSM
算法步驟:
(1)新建一個(gè)EFSM 類的對(duì)象efsm;
(2)將開(kāi)始狀態(tài)s0添加到efsm;
(3)調(diào)用局部函數(shù)constructEFSM(StartObj,efsm)將FAD分解為EFSM片段;
(4)調(diào)用局部函數(shù)AddtoEFSM(NextObj,StartObj,efsm)將分解的EFSM 片段添加到擴(kuò)展有限狀態(tài)機(jī)中;
(5)從結(jié)束狀態(tài)中刪除不符合定義的狀態(tài);
(6)返回efsm。
其中,局部函數(shù)constructEFSM(StartObj,efsm)是一個(gè)遞歸函數(shù),它的作用是將FAD 中圖元分解為EFSM 片段,按照?qǐng)D元類型和轉(zhuǎn)換規(guī)則將FAD 中起始點(diǎn)和結(jié)束點(diǎn)轉(zhuǎn)化為EFSM 中的初始狀態(tài)和結(jié)束狀態(tài),將系統(tǒng)動(dòng)作轉(zhuǎn)化為EFSM 中的事件狀態(tài)和系統(tǒng)轉(zhuǎn)移,將輸入操作轉(zhuǎn)化為EFSM 中的一個(gè)輸入轉(zhuǎn)移和空偽狀態(tài),將輸出操作轉(zhuǎn)化為EFSM 中的自動(dòng)轉(zhuǎn)移和輸出狀態(tài),將判定框轉(zhuǎn)化為EFSM 中的連接復(fù)合偽狀態(tài),根據(jù)出口增加條件轉(zhuǎn)移和空偽狀態(tài)。constructEFSM(StartObj,efsm)中定義了遞歸函數(shù)AddtoEFSM(NextObj,StartObj,efsm),它的作用是將由FAD片段轉(zhuǎn)換生成的EFSM 片段添加到擴(kuò)展有限狀態(tài)機(jī)中。
測(cè)試用例生成是根據(jù)擴(kuò)展有限狀態(tài)機(jī)轉(zhuǎn)化為測(cè)試序列,然后對(duì)測(cè)試序列進(jìn)行實(shí)例化。其中,從EFSM 生成測(cè)試序列就是要找出所有從初始狀態(tài)到結(jié)束狀態(tài)的可行序列;實(shí)例化測(cè)試序列即是對(duì)EFSM 中包含的數(shù)據(jù)進(jìn)行實(shí)例化,生成執(zhí)行的測(cè)試用例。
測(cè)試序列是EFSM 中的所有狀態(tài)序列集合。根據(jù)有向圖的廣度優(yōu)先搜索算法將EFSM 轉(zhuǎn)換為測(cè)試序列。
算法:從擴(kuò)展有限狀態(tài)機(jī)構(gòu)造一個(gè)測(cè)試序列集合produceTPS
算法原理:新建一條測(cè)試序列,從EFSM 的初始狀態(tài)s0開(kāi)始,對(duì)擴(kuò)展有限狀態(tài)機(jī)中的狀態(tài)和轉(zhuǎn)移進(jìn)行遍歷,添加到測(cè)試序列中。測(cè)試序列按照分支判定的數(shù)目劃分為相應(yīng)的若干測(cè)試序列,遇到擴(kuò)展有限狀態(tài)機(jī)中的結(jié)束狀態(tài)sF結(jié)束遍歷[3]。
輸入:efsm輸出:測(cè)試序列集合TPS:tps={tp1,tp2,…tpn}算法步驟:
(1)新建測(cè)試序列tp,并將efsm 的開(kāi)始狀態(tài)s0加入到tp中;
(2)將新建序列加入到測(cè)試序列集合中;
(3)調(diào)用局部函數(shù)contructTP 將遍歷的狀態(tài)添加到測(cè)試序列中;
(4)去除測(cè)試序列集合中的每一條序列的空狀態(tài);
(5)返回tps;
其中,局部函數(shù)contructTP 是一個(gè)遞歸函數(shù),它的作用是將當(dāng)前遍歷到的狀態(tài)補(bǔ)充到當(dāng)前序列中,并更新測(cè)試序列集合。
算法produceTPS采用廣度優(yōu)先搜索算法,對(duì)EFSM 中的狀態(tài)和轉(zhuǎn)移進(jìn)行遍歷,在最差的情形下,必須尋找到所有可能節(jié)點(diǎn)的所有序列,因此其時(shí)間復(fù)雜度為O(n+e),其中n 是EFSM 中的狀態(tài)節(jié)點(diǎn)數(shù)目,e是EFSM 中的連線數(shù)目。
對(duì)測(cè)試序列實(shí)例化,是對(duì)由EFSM 生成的測(cè)試序列中的測(cè)試數(shù)據(jù)進(jìn)行實(shí)例化,生成有效的測(cè)試用例。對(duì)測(cè)試數(shù)據(jù)實(shí)例化,是對(duì)測(cè)試過(guò)程中的數(shù)據(jù)包字段數(shù)值通過(guò)邊界值分析[4]和等價(jià)類劃分[5]的方法進(jìn)行賦值。
邊界值分析法對(duì)字段數(shù)值域的最大值、最小值、范圍內(nèi)任意值、較小于最大值、較小于最小值、較大于最大值、較大于最小值根據(jù)協(xié)議標(biāo)準(zhǔn)文本描述來(lái)分別設(shè)計(jì)測(cè)試用例。等價(jià)類劃分法將字段數(shù)值域劃分為無(wú)效等價(jià)類和有效等價(jià)類,在每一個(gè)等價(jià)類中再根據(jù)邊界值分析法設(shè)計(jì)一個(gè)測(cè)試數(shù)據(jù)。
以測(cè)試字段 “會(huì)話標(biāo)識(shí)”為例設(shè)計(jì)一組測(cè)試用例進(jìn)行說(shuō)明,按照協(xié)議標(biāo)準(zhǔn)規(guī)定其類型為數(shù)字,大小為2B,劃分有效等價(jià)類為(0,0xFFFF]。
(1)利用邊界值法,設(shè)計(jì)如下字段數(shù)值:
字段數(shù)值取值1:0xFFFF(上界)
字段數(shù)值取值2:0(下界)
(2)利用等價(jià)類劃分法,設(shè)計(jì)如下測(cè)試用例:
字段數(shù)值取值3:-1(不符合協(xié)議標(biāo)準(zhǔn))
字段數(shù)值取值4:0x10000(不符合協(xié)議標(biāo)準(zhǔn))
字段數(shù)值取值5:#¥%&*@(非數(shù)字字符)
字段數(shù)值取值6:空 (即數(shù)據(jù)包中沒(méi)有 “消息長(zhǎng)度”這個(gè)字段)
(3)根據(jù)數(shù)據(jù)包的實(shí)際長(zhǎng)度,為其賦予1 個(gè)正確的數(shù)值。
因此,為字段 “會(huì)話標(biāo)識(shí)”設(shè)計(jì)總計(jì)7個(gè)測(cè)試用例。
以測(cè)試IKE協(xié)議為例,從測(cè)試序列生成、測(cè)試序列錯(cuò)誤覆蓋度、測(cè)試用例測(cè)試覆蓋和測(cè)試用例執(zhí)行效率,對(duì)測(cè)試序列生成算法produceTPS與UIO 方法[6]、BUIO 方法[7]進(jìn)行分析比較。具體地講就是,對(duì)測(cè)試序列生成算法produceTPS與UIO 方法、BUIO 方法從測(cè)試序列生成和測(cè)試序列錯(cuò)誤覆蓋度進(jìn)行分析比較;對(duì)測(cè)試用例生成算法produceTC與文獻(xiàn)[8-11],從測(cè)試用例測(cè)試覆蓋和測(cè)試用例執(zhí)行效率進(jìn)行分析比較。
(1)測(cè)試序列生成分析
測(cè)試序列的長(zhǎng)度及其錯(cuò)誤覆蓋度決定了測(cè)試序列生成算法的優(yōu)劣。其中,測(cè)試序列的長(zhǎng)度決定了測(cè)試過(guò)程的工作時(shí)間,測(cè)試每個(gè)狀態(tài)轉(zhuǎn)換的可用測(cè)試序列,其長(zhǎng)度等于可用測(cè)試序列中的狀態(tài)個(gè)數(shù);錯(cuò)誤覆蓋度表征了測(cè)試序列的檢錯(cuò)能力和可信賴程度。
以測(cè)試IKE協(xié)議主模式客戶端預(yù)共享驗(yàn)證方式為例,UIO 方法生成的測(cè)試序列長(zhǎng)度最長(zhǎng)為39,BUIO 方法生成的測(cè)試序列長(zhǎng)度最長(zhǎng)為22[12];produceTPS 算法生成的測(cè)試序列長(zhǎng)度最長(zhǎng)為11,縮短比例分別為71.79%和50%。
在EFSM 中,通過(guò)produceTPS算法生成的每個(gè)狀態(tài)的可用測(cè)試序列見(jiàn)表1。
則produceTPS算法生成的可用測(cè)試序列T1~T8長(zhǎng)度與UIO 方法和BUIO 方法生成的可用測(cè)試序列長(zhǎng)度[10]對(duì)比如圖1所示。
圖1 測(cè)試序列長(zhǎng)度
由圖1可見(jiàn),對(duì)每個(gè)狀態(tài)轉(zhuǎn)換的可用測(cè)試序列長(zhǎng)度來(lái)說(shuō),produceTPS算法比UIO 算法短,比BUIO 算法長(zhǎng)。測(cè)試用例中的測(cè)試步驟由測(cè)試序列的長(zhǎng)度決定,因此produceTPS算法優(yōu)于UIO 方法;produceTPS 算法之所以比BUIO 方法生成測(cè)試序列長(zhǎng),是因?yàn)锽UIO 方法在生成測(cè)試序列的過(guò)程中,沒(méi)有考慮到構(gòu)造數(shù)據(jù)包的狀態(tài),因此通過(guò)BUIO 方法生成的測(cè)試序列來(lái)進(jìn)一步設(shè)計(jì)與生成測(cè)試用例,需要主觀上對(duì)抽象測(cè)試序列的理解。測(cè)試數(shù)據(jù)包的構(gòu)造在測(cè)試用例中是一項(xiàng)重要環(huán)節(jié),produceTPS算法添加了構(gòu)造數(shù)據(jù)包的狀態(tài),就可以通過(guò)測(cè)試序列自動(dòng)生成測(cè)試用例,使得測(cè)試用例描述的測(cè)試過(guò)程更加完整和清楚,更容易進(jìn)行測(cè)試執(zhí)行,可以減少后期工作量。
表1 可用測(cè)試序列
(2)錯(cuò)誤覆蓋度分析比較
UIO 方法和BUIO 方法都是以UIO 序列為特征序列來(lái)驗(yàn)證每次轉(zhuǎn)換的末狀態(tài),對(duì)FSM 中的所有轉(zhuǎn)換進(jìn)行了遍歷,其錯(cuò)誤覆蓋度都超過(guò)99%[12]。而produceTPS算法基于有向圖的廣度優(yōu)先搜索算法,也是對(duì)FSM 中的所有轉(zhuǎn)換進(jìn)行了遍歷,并且嚴(yán)格遵循關(guān)鍵子句邏輯覆蓋準(zhǔn)則,因此其錯(cuò)誤覆蓋度與UIO 方法和BUIO 方法相近,都超過(guò)99%。但是UIO 方法和BUIO 方法基于的FSM 沒(méi)有完全形式化,不同轉(zhuǎn)換的末狀態(tài)可能是同一個(gè)狀態(tài)(如自轉(zhuǎn)移),所以在形式化描述上UIO 方法和BUIO 方法不如produceTPS算法。
測(cè)試用例測(cè)試覆蓋分析比較
設(shè)計(jì)與生成的測(cè)試用例應(yīng)覆蓋被測(cè)協(xié)議標(biāo)準(zhǔn)的所有功能點(diǎn),顆粒度劃分適當(dāng),沒(méi)有冗余。測(cè)試數(shù)據(jù)應(yīng)遵循錯(cuò)誤覆蓋準(zhǔn)則,生成的測(cè)試用例既包括測(cè)試行為與測(cè)試數(shù)據(jù)正確的測(cè)試用例,也包括測(cè)試行為與測(cè)試數(shù)據(jù)不正確的測(cè)試用例。
通過(guò)測(cè)試用例生成算法produceTC設(shè)計(jì)IPsec協(xié)議測(cè)試集,對(duì)字段數(shù)值采用等價(jià)類劃分和邊界值分析法相結(jié)合的方式進(jìn)行賦值。IPsec協(xié)議包括3個(gè)子協(xié)議:IKE 協(xié)議、認(rèn)證頭協(xié)議AH 和封裝安全載荷協(xié)議ESP。
采用等價(jià)類劃分和邊界值分析法為IPsec每個(gè)協(xié)議設(shè)計(jì)一個(gè)測(cè)試集,見(jiàn)表2。每個(gè)測(cè)試集包含若干測(cè)試項(xiàng),分為有效等價(jià)類劃分項(xiàng)和無(wú)效等價(jià)類劃分項(xiàng);再根據(jù)測(cè)試項(xiàng)設(shè)計(jì)相應(yīng)的有效等價(jià)類測(cè)試用例和無(wú)效等價(jià)類測(cè)試用例。
表2 IPsec協(xié)議測(cè)試集
將表2設(shè)計(jì)的IPsec協(xié)議測(cè)試集與已有的IPsec協(xié)議測(cè)試集[8-11]進(jìn)行對(duì)比分析。各文獻(xiàn)中設(shè)計(jì)的測(cè)試用例數(shù)如圖2所示。
圖2 測(cè)試集比較
對(duì)圖2中的數(shù)據(jù)進(jìn)行對(duì)比分析如下:
(1)由可知,對(duì)于IKE 協(xié)議,文獻(xiàn)[8-10]中并沒(méi)有為其設(shè)計(jì)測(cè)試用例;文獻(xiàn)[11]中沒(méi)有對(duì)AH 協(xié)議和ESP協(xié)議設(shè)計(jì)測(cè)試用例。由于ESP 協(xié)議、AH 協(xié)議和IKE 協(xié)議是IPsec協(xié)議的重要組成部分,其中任意一個(gè)協(xié)議的測(cè)試用例缺失對(duì)于整個(gè)IPsec協(xié)議測(cè)試集來(lái)說(shuō)都是不完備的。
(2)對(duì)于文獻(xiàn)[8-10]中設(shè)計(jì)的AH 和ESP 協(xié)議測(cè)試用例集,并沒(méi)有給出具體的測(cè)試用例設(shè)計(jì)過(guò)程,因此不方便對(duì)比分析。
(3)文獻(xiàn)[11]有91個(gè)IKE 協(xié)議測(cè)試用例,有45個(gè)功能性測(cè)試用例和46個(gè)行為性測(cè)試用例,并且行為測(cè)試用例中沒(méi)有覆蓋不正確行為的測(cè)試用例。由于IKE 協(xié)議中的功能測(cè)試用例和行為測(cè)試用例可結(jié)合進(jìn)行[11],重復(fù)設(shè)計(jì)導(dǎo)致測(cè)試用例冗余。
(4)本文針對(duì)IKE、AH、ESP協(xié)議分別進(jìn)行了測(cè)試用例設(shè)計(jì),如所示,共設(shè)計(jì)1785個(gè)測(cè)試用例。進(jìn)行測(cè)試用例設(shè)計(jì)時(shí),通過(guò)邊界值原則和等價(jià)類劃分原則設(shè)計(jì)字段數(shù)值生成測(cè)試用例,可以盡量避免冗余測(cè)試用例的產(chǎn)生。
因此根據(jù)以上分析可知,本文設(shè)計(jì)的協(xié)議測(cè)試集比現(xiàn)有的測(cè)試集在測(cè)試覆蓋度方面更全面。
測(cè)試用例的執(zhí)行效率分析
文獻(xiàn)[8-10]中,未涉及IKE 測(cè)試集,文獻(xiàn)[11]利用UIO 算法為IKE 協(xié)議設(shè)計(jì)了正確的行為測(cè)試用例。論文采用produceTPS算法生成測(cè)試序列,與UIO 算法相比,減少了測(cè)試序列的平均長(zhǎng)度。因此本文在設(shè)計(jì)測(cè)試用例時(shí),是利用produceTPS算法生成的較短測(cè)試序列上進(jìn)行的,生成的測(cè)試用例中包含測(cè)試步驟更少,執(zhí)行時(shí)測(cè)試效率更高。
在協(xié)議的一致性測(cè)試中,通過(guò)測(cè)試用例指導(dǎo)測(cè)試執(zhí)行。本文提出一種基于形式化活動(dòng)圖和擴(kuò)展有限狀態(tài)機(jī)的協(xié)議一致性測(cè)試用例生成模型,利用FAD 對(duì)協(xié)議標(biāo)準(zhǔn)中說(shuō)明的協(xié)議功能描述進(jìn)行形式化建模,設(shè)計(jì)算法將FAD 轉(zhuǎn)換為EFSM 自動(dòng)生成測(cè)試用例。通過(guò)一個(gè)實(shí)例與已有的測(cè)試序列生成算法進(jìn)行對(duì)比分析,結(jié)果表明在測(cè)試序列、測(cè)試序列錯(cuò)誤覆蓋度、測(cè)試用例測(cè)試覆蓋和測(cè)試用例執(zhí)行效率均具有一定的優(yōu)越性。
[1]TONG Yi,DONG Bidan.Test cases automatic generation from UML state diagram [J].Microcomputer Information,2011,27 (9):201-203 (in Chinese). [佟軼,董碧丹.UML 狀態(tài)圖的測(cè)試用例自動(dòng)生成 [J].微計(jì)算機(jī)信息,2011,27 (9):201-203.]
[2]QI Jianye,LI Qiang,YU Xiang.Research on test case generation using formal activity diagram of protocol conformance testing [J].Journal of Anhui University (Natural Science Edition),2013,37 (3):75-80 (in Chinese). [齊建業(yè),李強(qiáng),余祥.基于形式活動(dòng)圖的協(xié)議一致性測(cè)試用例生成方法研究[J].安徽大學(xué)學(xué)報(bào) (自然科學(xué)版),2013,37 (3):75-80.]
[3]YU Xiang,LI Qiang,QI Jianye.A research on automated software test case generation based on control flow [J].Journal of Inner Mongolia University (Natural Science Edition),2011,42 (5):521-527 (in Chinese). [余祥,李強(qiáng),齊建業(yè).基于控制流程的軟件測(cè)試用例自動(dòng)生成方法研究 [J].內(nèi)蒙古大學(xué)學(xué)報(bào) (自然科學(xué)版),2011,42 (5):521-527.]
[4]LIU Chunling,LEI Haihong.Design method of black-box testing case [J]. Modern Electronics Technique,2012,33(20):46-48 (in Chinese).[劉春玲,雷海紅.黑盒測(cè)試用例設(shè)計(jì)方法研究 [J].現(xiàn)代電子技術(shù),2012,33 (20):46-48.]
[5]GUO Xi,ZHANG Huanguo.Approach for reduced test suite generation based on predicate abstraction [J].Journal on Communications,2012,33 (3):35-43 (in Chinese). [郭曦,張煥國(guó).基于謂詞抽象的測(cè)試用例約減生成方法 [J].通信學(xué)報(bào),2012,33 (3):35-43.]
[6]Gu Juan,Yuan Dongming,Hu Hefei,et al.An improved method based on UIOv for test sequence generation [C]//IEEE 14th International Conference on Communication Technology,2012:573-577.
[7]GAO Zhanchun,HU Xiaoling,JIANG Yanjun,et al.Research on BUIO generation and test sequences generation algorithms[J].Computer Engineer and Applications,2011,47(6):116-118 (in Chinese).[高占春,胡曉玲,蔣硯軍,等.BUIO 生成及測(cè)試序列生成算法研究 [J].計(jì)算機(jī)工程與應(yīng)用,2011,47 (6):116-118.]
[8]TIAN Jun.Research on IPv6protocol conformance test and implementation of the test system [D].Beijing:Institute of Computing Technology Chinese Academy of Sciences,2001(in Chinese).[田軍.IPv6協(xié)議一致性測(cè)試研究及測(cè)試系統(tǒng)實(shí)現(xiàn) [D].北京:中國(guó)科學(xué)院計(jì)算技術(shù)研究所,2001.]
[9]ZHENG Hongxia.A test case design method for IPv6protocol conformance testing [D].Beijing:Institute of Computing Technology Chinese Academy of Sciences,2003 (in Chinese).[鄭紅霞.IPv6協(xié)議一致性測(cè)試?yán)O(shè)計(jì)方法 [D].北京:中國(guó)科學(xué)院計(jì)算技術(shù)研究所,2003.]
[10]LV Chao.Research on the design of IPSec protocol confor-mance testing system [D].Hefei:University of Science and Technology of China,2005 (in Chinese).[呂超.IPSec協(xié)議一致性測(cè)試系統(tǒng)的設(shè)計(jì)研究[D].合肥:中國(guó)科學(xué)技術(shù)大學(xué),2005.]
[11]WANG Wenjuan.Research on the test suite generation for security protocol[D].Zhengzhou:The PLA Information Engineering University,2009 (in Chinese). [王文娟.安全協(xié)議測(cè)試集生成技術(shù)研究 [D].鄭州:解放軍信息工程大學(xué),2009.]
[12]MA Yan.Research on optimizing test techonolgy of IPSec protocol[D].Zhengzhou:The PLA Information Enginee-ring University,2010 (in Chinese).[馬艷.IPSec協(xié)議測(cè)試優(yōu)化技術(shù)研究 [D].鄭州:解放軍信息工程大學(xué),2010.]