張曉娜,金朋飛,嚴(yán)長(zhǎng)偉
(中國(guó)洛陽(yáng)電子裝備試驗(yàn)中心,河南洛陽(yáng) 471003)
?
基于鄰接矩陣的軟件測(cè)試環(huán)境規(guī)劃設(shè)計(jì)方法
張曉娜,金朋飛,嚴(yán)長(zhǎng)偉
(中國(guó)洛陽(yáng)電子裝備試驗(yàn)中心,河南洛陽(yáng)471003)
摘要:在分析軟件測(cè)試環(huán)境的基礎(chǔ)上,研究了軟件試驗(yàn)中測(cè)試用例設(shè)計(jì)面臨的突出問(wèn)題,從軟件測(cè)試環(huán)境的規(guī)劃出發(fā),基于有向圖的鄰接矩陣,設(shè)計(jì)滿足一定覆蓋度標(biāo)準(zhǔn)的軟件測(cè)試環(huán)境規(guī)劃方法,可為軟件試驗(yàn)提供技術(shù)參考和研究方向。
關(guān)鍵詞:軟件試驗(yàn);測(cè)試設(shè)計(jì);測(cè)試環(huán)境;有向圖;鄰接矩陣
修回日期: 2015-10-30
金朋飛(1979-),男,碩士研究生,工程師。
嚴(yán)長(zhǎng)偉(1986-),男,碩士研究生,研究實(shí)習(xí)員。
隨著計(jì)算機(jī)技術(shù)的飛速發(fā)展和現(xiàn)代武器裝備信息化要求的不斷提高,電子信息裝備建設(shè)發(fā)展步伐加快,其自動(dòng)化、智能化水平有了極大的提高,整體呈現(xiàn)軟件化趨勢(shì)。軟件在電子信息裝備中所占的比重與日俱增,其作用也日益顯著,其質(zhì)量成為了電子信息裝備研制成敗的決定性因素[1]。為了保證電子信息裝備軟件的質(zhì)量,軟件試驗(yàn)成為一種非常有效的手段,其不僅僅考核指標(biāo)要求,還充分考慮滿足運(yùn)行環(huán)境的隱含需求,因?yàn)檐浖氖Р粌H僅是由于軟件中存在缺陷,失效也可能是由于環(huán)境條件引起的或者由于硬件環(huán)境的改變而影響軟件的執(zhí)行。因此,在軟件測(cè)試開(kāi)發(fā)過(guò)程的測(cè)試設(shè)計(jì)階段,如何合理有效地規(guī)劃測(cè)試環(huán)境的搭建就成為軟件試驗(yàn)的重要研究?jī)?nèi)容之一。
1測(cè)試環(huán)境概述
測(cè)試環(huán)境(Test Environment),ISTQB中定義為“執(zhí)行測(cè)試需要的環(huán)境,包括硬件、儀器、模擬器、軟件工具和其他支持要素[2]”,按階段劃分為單元測(cè)試環(huán)境、部件測(cè)試環(huán)境、配置項(xiàng)測(cè)試環(huán)境、系統(tǒng)測(cè)試環(huán)境等[3],按用途分為硬件環(huán)境、軟件環(huán)境和網(wǎng)絡(luò)環(huán)境[4],按場(chǎng)地分為真實(shí)環(huán)境(現(xiàn)場(chǎng)測(cè)試)和仿真環(huán)境(實(shí)驗(yàn)室測(cè)試)[3]等。
目前,國(guó)內(nèi)許多研究機(jī)構(gòu)都進(jìn)行了仿真試驗(yàn)環(huán)境構(gòu)建技術(shù)的研究。其中,文獻(xiàn)[5]提出了基于操作系統(tǒng)虛擬化和軟路由技術(shù)的大規(guī)模IP網(wǎng)絡(luò)仿真試驗(yàn)環(huán)境構(gòu)建方法。文獻(xiàn)[6]研究了試驗(yàn)環(huán)境概念模型的構(gòu)建方法,提出了概念模型驗(yàn)證的原則,并從語(yǔ)義語(yǔ)法和語(yǔ)用三個(gè)方面建立了概念模型的驗(yàn)證指標(biāo)體系,形成了一套完整的試驗(yàn)環(huán)境需求分析與驗(yàn)證的體系結(jié)構(gòu)。文獻(xiàn)[7]在探討傳統(tǒng)軟件測(cè)試方法遇到的困境及其局限性基礎(chǔ)上,有針對(duì)性地研究軟件測(cè)試環(huán)境仿真技術(shù),運(yùn)用此技術(shù)能有效提高軟件測(cè)試覆蓋度。文獻(xiàn)[8]針對(duì)C4ISR仿真試驗(yàn)系統(tǒng)在試驗(yàn)準(zhǔn)備階段的環(huán)境構(gòu)建和配置問(wèn)題,研究并提出一種基于XML的仿真配置方法。這些文獻(xiàn)采用不同技術(shù)實(shí)現(xiàn)針對(duì)不同需求的試驗(yàn)環(huán)境構(gòu)建方法,但是,總體缺乏對(duì)實(shí)際運(yùn)行環(huán)境構(gòu)建的研究,基于此,本文以軟件系統(tǒng)運(yùn)行過(guò)程的交互情況為規(guī)劃目的,以覆蓋所有通信鏈路為評(píng)價(jià)標(biāo)準(zhǔn),設(shè)計(jì)測(cè)試環(huán)境規(guī)劃方法。
2面臨的主要問(wèn)題
電子信息裝備軟件在經(jīng)過(guò)軟件研制方內(nèi)部的集成測(cè)試和系統(tǒng)集成測(cè)試后(即一方測(cè)試),然后提交獨(dú)立的電子信息裝備獨(dú)立測(cè)評(píng)機(jī)構(gòu)進(jìn)行第三方測(cè)評(píng),之后進(jìn)入電子靶場(chǎng)依照指標(biāo)要求進(jìn)行裝備設(shè)計(jì)定型試驗(yàn)。但是,在電子信息裝備設(shè)計(jì)定型試驗(yàn)信息中卻包含了很多實(shí)驗(yàn)室仿真條件下不能暴露的軟件缺陷信息[9-11]。在某系統(tǒng)設(shè)計(jì)定型試驗(yàn)過(guò)程中,發(fā)現(xiàn)由于環(huán)境而引起的軟件失效,分析其根本原因在于通信鏈路的傳輸速率、帶寬、誤碼率等因素。因此,為了切實(shí)提高電子信息裝備軟件的質(zhì)量,應(yīng)進(jìn)行軟件試驗(yàn)單獨(dú)定型。
軟件試驗(yàn)是在實(shí)際應(yīng)用環(huán)境中所開(kāi)展的軟件測(cè)試,其不同于第三方測(cè)評(píng)和裝備設(shè)計(jì)定型試驗(yàn)。因?yàn)榈谌綔y(cè)評(píng)很多是在仿真環(huán)境下進(jìn)行的測(cè)試,一般不考慮通信鏈路的影響;而裝備設(shè)計(jì)定型試驗(yàn)更多的是考慮系統(tǒng)指標(biāo)/戰(zhàn)技指標(biāo),對(duì)軟件的考核與其比重不相適應(yīng)。在軟件試驗(yàn)中,測(cè)試開(kāi)發(fā)面臨的主要問(wèn)題是確定測(cè)試用例的相關(guān)元素。
測(cè)試依據(jù):涉及的參考來(lái)源,如系統(tǒng)/軟件需求規(guī)格說(shuō)明、設(shè)計(jì)文檔等;
優(yōu)先級(jí):比如高、中、低;
測(cè)試配置:哪個(gè)測(cè)試對(duì)象?在什么硬件/軟件平臺(tái)上?
測(cè)試目標(biāo):測(cè)試對(duì)象的質(zhì)量屬性:功能性、可靠性、易用性、效率、可維護(hù)性、可移植性等。
前置條件:在執(zhí)行測(cè)試前測(cè)試對(duì)象必須所處的狀態(tài);
測(cè)試步驟:為輸入測(cè)試數(shù)據(jù)需要采取哪些行為?
測(cè)試數(shù)據(jù):測(cè)試輸入數(shù)據(jù)表;
期望結(jié)果:期望的結(jié)果;
驗(yàn)證原則:查詢實(shí)際結(jié)果與期望結(jié)果是否一致;
后置條件:在測(cè)試結(jié)束后的測(cè)試對(duì)象的狀態(tài)(理想情況下后置條件應(yīng)該與前置條件一致)。
其中,軟件試驗(yàn)在第三方測(cè)評(píng)的基礎(chǔ)上著重考慮測(cè)試環(huán)境的影響,對(duì)應(yīng)測(cè)試用例的“測(cè)試配置”元素,不僅考慮測(cè)試節(jié)點(diǎn)上測(cè)試對(duì)象、軟硬件平臺(tái),還考慮通信鏈路的影響。
3基于鄰接矩陣[12]的測(cè)試環(huán)境規(guī)劃設(shè)計(jì)方法
在某系統(tǒng)軟件試驗(yàn)過(guò)程中,除了考慮硬件環(huán)境和軟件環(huán)境之外,尤其注重考慮網(wǎng)絡(luò)環(huán)境,即在實(shí)際通信鏈路環(huán)境下測(cè)試其軟件質(zhì)量特性,同時(shí)考慮到其信息的流動(dòng)大致分為指控流和情報(bào)流,以應(yīng)用為導(dǎo)向規(guī)劃通信鏈路。在測(cè)試設(shè)計(jì)過(guò)程中采用以下步驟:
1) 根據(jù)測(cè)試需求中每一質(zhì)量特性所涉及的數(shù)據(jù)信息類別進(jìn)行細(xì)化分解,例如“適合性”指標(biāo)之一“空情信息融(綜)合能力”中涉及原始空情、綜合空情等數(shù)據(jù)信息;
2) 根據(jù)相關(guān)測(cè)試依據(jù),獲取系統(tǒng)空情信息流程圖,如圖1;
圖1 空情信息流程圖
圖2 空情信息有向圖
4) 以信息的觸發(fā)點(diǎn)作為信息流始點(diǎn),以信息的結(jié)束點(diǎn)作為信息流終點(diǎn),形成不同的信息流,采用邊覆蓋標(biāo)準(zhǔn)設(shè)計(jì)不同的邏輯測(cè)試用例。例如,根據(jù)圖1,設(shè)計(jì)空情信息融(綜)合能力(X)邏輯測(cè)試用例組(X)LUseCase={acb,ae,adjif,agh}={Link13Link32Link23,Link13Link34,Link13Link36Link67Link76Link63,Link13Link35Link53};
5) 根據(jù)不同類別信息在通信設(shè)備上的傳輸情況,考慮通信節(jié)點(diǎn)以及通信鏈路,然后選擇不同的通信設(shè)備(不同的通信設(shè)備構(gòu)成不同的有線/無(wú)線通信網(wǎng)絡(luò)),這亦是測(cè)試設(shè)計(jì)的重點(diǎn),根據(jù)某節(jié)點(diǎn)輸出的信息類別查找相應(yīng)的通信設(shè)備,如果存在多個(gè),則按順序選擇,同時(shí)相應(yīng)鏈路節(jié)點(diǎn)輸入的信息類別和通信設(shè)備與之一致,選擇兩節(jié)點(diǎn)的交集,得出有向圖的鄰接矩陣如表1,例如,對(duì)于路徑:
6) 因此,邏輯測(cè)試用例組
(X)LUseCase={Link13Link32Link23,Link13Link34,Link13Link36Link67Link76Link63,Link13Link35Link53}
7) 為了提高測(cè)試效率,確定一組測(cè)試用例的先后執(zhí)行順序(形成一個(gè)測(cè)試套件),在同一測(cè)試環(huán)境下執(zhí)行,見(jiàn)表1中序號(hào)所示。序號(hào)具體查找方法如下:
a)依次查找到的首個(gè)節(jié)點(diǎn)下某行i=0(或i=i+1)通信設(shè)備的“1”值為起始點(diǎn)j=① (或j=j+1),以此列所在的節(jié)點(diǎn)為后續(xù)節(jié)點(diǎn);
b)依次查找后續(xù)節(jié)點(diǎn)的某行通信設(shè)備的“1”值為j=j+1,以此列所在的節(jié)點(diǎn)為后續(xù)節(jié)點(diǎn);
c)重復(fù)執(zhí)行b),直至查找到某節(jié)點(diǎn)某行通信設(shè)備無(wú)“1”值;
d)重復(fù)執(zhí)行a)。
表1 空情信息有向圖對(duì)應(yīng)的鄰接矩陣
得到測(cè)試套件如下:
據(jù)此規(guī)劃其通信鏈路如圖3所示。
圖3 通信鏈路規(guī)劃圖
上述方法可滿足某類信息流覆蓋各個(gè)通信鏈路這一準(zhǔn)則下的全面覆蓋。
4結(jié)束語(yǔ)
電子信息裝備軟件比重的日益增加,對(duì)軟件質(zhì)量提出了更高的標(biāo)準(zhǔn)。而環(huán)境作為影響軟件失效的重要因素之一,同時(shí)作為軟件試驗(yàn)的基礎(chǔ),其規(guī)劃的系統(tǒng)性和充分性直接影響軟件質(zhì)量的度量。
本文通過(guò)附加節(jié)點(diǎn)的信息類別和通信設(shè)備,并考慮節(jié)點(diǎn)的輸入和輸出對(duì)有向圖進(jìn)行改進(jìn),得出鄰接矩陣,并找出可達(dá)路徑,實(shí)現(xiàn)所有的通信鏈路覆蓋。在未來(lái)電子信息裝備軟件設(shè)計(jì)定型試驗(yàn)過(guò)程中,應(yīng)增加軟件試驗(yàn)的比重,深入了解測(cè)試對(duì)象,充分識(shí)別測(cè)試需求,研究測(cè)試方法,并充分發(fā)揮資源優(yōu)勢(shì),構(gòu)建不同規(guī)模的測(cè)試環(huán)境,提高測(cè)試的充分性和有效性,從而有效提升軟件試驗(yàn)水平,最終為進(jìn)一步提高軟件質(zhì)量和裝備的使用效能打下堅(jiān)實(shí)的基礎(chǔ)。
參考文獻(xiàn):
[1]徐國(guó)平,姚皋音.淺析艦載電子裝備軟件保障的現(xiàn)狀與對(duì)策[J].中國(guó)修船,2011,24(2):46-48.
[2]國(guó)際軟件測(cè)試認(rèn)證委員會(huì).軟件測(cè)試專業(yè)術(shù)語(yǔ)中英文對(duì)照表[S].2.4版(2014年7月4日),中文修訂版(2015年5月28日).
[3]中國(guó)人民解放軍總裝備部司令部.總裝備部軟件工程規(guī)范[S].2008.
[4]趙斌.軟件測(cè)試技術(shù)經(jīng)典教程[M].北京:科學(xué)出版社,2007:10-11.
[5]李大偉.大規(guī)模IP網(wǎng)絡(luò)仿真試驗(yàn)環(huán)境構(gòu)建方法[J].指揮信息系統(tǒng)與技術(shù),2013,4(6):70-74.
[6]葉禮邦,李超,付海波,等.試驗(yàn)環(huán)境需求分析與驗(yàn)證方法[J].指揮控制與仿真,2014,36(1):111-116.
[7]林潔,吳慈伶,孫俊若,等.雷達(dá)軟件測(cè)試環(huán)境仿真平臺(tái)技術(shù)研究與實(shí)踐[J].現(xiàn)代雷達(dá),2010,32(6):92-95.
[8]楚威,孫豐鑫,劉力力.C4ISR系統(tǒng)仿真試驗(yàn)環(huán)境構(gòu)建與配置方法[J].計(jì)算機(jī)與現(xiàn)代化,2013,220(12):79-80.
[9]顧濱兵,王艷軍,王勇利.裝備試驗(yàn)中的軟件缺陷信息在軍用軟件測(cè)試中的應(yīng)用[J].計(jì)量與測(cè)試技術(shù),2013,40(1):40-44.
[10]洛剛,王國(guó)盛,聶晶.信息化裝備試驗(yàn)建設(shè)思考[J].裝備指揮技術(shù)學(xué)院學(xué)報(bào),2010,21(6):106-109.
[11]姚志軍,郭齊勝,陳永和.武器裝備試驗(yàn)轉(zhuǎn)型問(wèn)題研究[J].裝備學(xué)院學(xué)報(bào),2013,24(6):111-114.
[12]胡運(yùn)權(quán).運(yùn)籌學(xué)基礎(chǔ)與應(yīng)用[M].哈爾濱:哈爾濱工業(yè)大學(xué)出版社,2006.
Design Method of Software Test Environment Based on Adjacency Matrix
ZHANG Xiao-na,JIN Peng-fei,YAN Chang-wei
(Luoyang Electronic Equipment Test Center,Luoyang 471003,China)
Abstract:Based on the analysis about the software test environment, this paper studies the key problems of the test case design in the software test, based on the adjacency matrix of directed graph, designs the software test environment plan method up to coverage criteria. All these researches can provide technology reference for the future development of software test.
Key words:software test; test design; test environment; directed graph; adjacency matrix
作者簡(jiǎn)介:張曉娜(1981-),女,河南人,碩士研究生,助理研究員,研究方向?yàn)榻c仿真,軟件評(píng)測(cè)。
收稿日期:2015-08-25
中圖分類號(hào):TP311.52
文獻(xiàn)標(biāo)志碼:A
DOI:10.3969/j.issn.1673-3819.2016.01.027
文章編號(hào):1673-3819(2016)01-0127-04