李 英,薛 嵐
(江西信息應(yīng)用職業(yè)技術(shù)學(xué)院 計(jì)算機(jī)技術(shù)系,南昌 330043)
軟件測(cè)試技術(shù)之功能測(cè)試方法探討與分析
李英,薛嵐
(江西信息應(yīng)用職業(yè)技術(shù)學(xué)院計(jì)算機(jī)技術(shù)系,南昌330043)
摘要:軟件產(chǎn)品隨著計(jì)算機(jī)信息產(chǎn)業(yè)技術(shù)的迅速發(fā)展而規(guī)模越來越大,軟件測(cè)試技術(shù)也隨之發(fā)展,它是貫穿于整個(gè)軟件項(xiàng)目開發(fā)的過程檢驗(yàn)軟件產(chǎn)品質(zhì)量的最有效的方法之一,主要確認(rèn)產(chǎn)品是否完成需求規(guī)格說明書中所設(shè)定的功能。本文主要討論了軟件測(cè)試技術(shù)的黑盒測(cè)試方法的功能測(cè)試,功能測(cè)試也可以被稱之為正確性測(cè)試,它主要檢查軟件產(chǎn)品的功能是否能夠滿足用戶的要求。由于功能測(cè)試牽涉到了軟件產(chǎn)品的正確性,所以功能測(cè)試在整個(gè)軟件測(cè)試技術(shù)中也是極為重要的。
關(guān)鍵字:軟件測(cè)試技術(shù);軟件產(chǎn)品質(zhì)量;功能測(cè)試;黑盒測(cè)試;正確性
軟件測(cè)試技術(shù)黑盒測(cè)試—功能測(cè)試也可以稱之為正確性測(cè)試。在測(cè)試過程中,把程序比作一個(gè)看不清、打不開的黑匣子,在完全不考慮程序的內(nèi)部情況的前提下,測(cè)試人員只對(duì)程序的外部進(jìn)行功能性測(cè)試。在進(jìn)行功能性測(cè)試時(shí),只是通過輸入數(shù)據(jù)、操作數(shù)據(jù)、輸出結(jié)果來檢驗(yàn)軟件系統(tǒng)是否能夠按照需求規(guī)格說明書中用戶所要求的功能正常使用。
功能測(cè)試不可能把所有的輸入都作為測(cè)試用例來進(jìn)行窮舉測(cè)試,所以我們必須從無限的輸入數(shù)據(jù)中選出極具有典型的測(cè)試數(shù)據(jù)來進(jìn)行測(cè)試。功能測(cè)試的方法有很多種,其中有等價(jià)類劃分法、邊界值分析法、因果圖法、錯(cuò)誤推測(cè)法、場(chǎng)景分析法等等。下面介紹幾種常用的功能測(cè)試方法:等價(jià)類劃分法、邊界值分析法、錯(cuò)誤推測(cè)法和因果圖法。
2.1等價(jià)類劃分
等價(jià)類的劃分根據(jù)程序的需求規(guī)格說明可以分成兩種不同等價(jià)類的情況:
(1)有效等價(jià)類:是指有意義的,合法的輸入數(shù)據(jù)構(gòu)成的集合。
(2)無效等價(jià)類:是指無意義的,非法的輸入數(shù)據(jù)構(gòu)成的集合。
在設(shè)計(jì)測(cè)試用例時(shí),要在輸入域中分別對(duì)有效區(qū)域和無效區(qū)域進(jìn)行有效等價(jià)類和無效等價(jià)類的設(shè)計(jì);如何進(jìn)行正確的等價(jià)類劃分?劃分等價(jià)類時(shí)有如下五個(gè)原則:
(1)如果輸入的條件是一個(gè)取值的范圍,那么則可以劃分成一個(gè)有效等價(jià)類(合法值,即取值合法的區(qū)域內(nèi))和兩個(gè)無效等價(jià)類(非法值,即取值的區(qū)域兩端外)。
(2)如果輸入的條件含有某種條件,比如說“必須如何”等,或者如果是有一組輸入值的集合,那么則可以劃分成一個(gè)有效等價(jià)類(滿足必須條件的所有值或輸入值的集合)和一個(gè)無效等價(jià)類(不滿足必須條件的所有值和除輸入值集合之外的所有值)。
(3)如果輸入條件是一個(gè)“True”或“False”的布爾值,那么則可以劃分一個(gè)有效等價(jià)類(布爾值為True)和一個(gè)無效等價(jià)類(布爾值為False)。
針對(duì)基于信號(hào)處理的滾動(dòng)軸承復(fù)合故障診斷難的問題,提出一種基于NCA的滾動(dòng)軸承復(fù)合故障智能診斷方法.為提高NCA的分類正確率及效率,用常規(guī)時(shí)域特征提取方法,對(duì)滾動(dòng)軸承不同運(yùn)行狀態(tài)的信號(hào)進(jìn)行特征提取,將提取后的特征向量作為NCA的訓(xùn)練及測(cè)試樣本,取得理想的分類效果.通過滾動(dòng)軸承3種復(fù)合故障振動(dòng)數(shù)據(jù)及正常狀態(tài)數(shù)據(jù),驗(yàn)證了所述方法的有效性.此外,通過與PCA分類效果對(duì)比,證明了所述方法的優(yōu)越性,具有更高的分類正確率.
(4)如果輸入條件是程序?qū)σ唤M數(shù)據(jù)值要進(jìn)行分別處理時(shí),也就是程序定義了一組數(shù)據(jù)輸入的值,那么則N個(gè)有效等價(jià)類(每一個(gè)輸入值)和一個(gè)無效等價(jià)類(所有不允許的輸入值的一組集合)。
(5)如果輸入條件規(guī)定了一系列必須要遵守的規(guī)則,那么則可以劃分一個(gè)有效等價(jià)類(滿足所有要遵守的規(guī)則)和N個(gè)無效等價(jià)類(從若干個(gè)不同角度違反規(guī)則)。
等價(jià)類劃分完之后就可以建立等價(jià)類表,最后從劃分出的等價(jià)類表中設(shè)計(jì)選擇合適的測(cè)試用例。
輸入條件有效等價(jià)類無效等價(jià)類………………………………
2.2邊界值分析法
邊界值分析法是對(duì)輸入值臨界情況的一種考慮,它可以認(rèn)為是對(duì)等價(jià)類劃分法的一種補(bǔ)充,也可以另外一個(gè)層面上來理解,也就是等價(jià)類劃分法中的一種特殊情況。
程序輸入值的數(shù)據(jù)類型可以有各種類型,例如數(shù)值、字符、位置、數(shù)量、速度、地址、尺寸等,這些類型都會(huì)包含確定的邊界,所以邊界值分析法應(yīng)考慮邊界的情況,即臨界的值;此測(cè)試方法如果僅僅測(cè)試邊界線上的最后一個(gè)合法數(shù)據(jù)點(diǎn)往往是不夠充分的,它還應(yīng)測(cè)試剛超過邊界的非法數(shù)據(jù)。
2.3錯(cuò)誤推測(cè)法
錯(cuò)誤推測(cè)法是通過測(cè)試人員的經(jīng)驗(yàn)和直覺推測(cè)程序中可能存在的各種錯(cuò)誤,然后再根據(jù)所推測(cè)的錯(cuò)誤設(shè)計(jì)具有針對(duì)性的測(cè)試用例。
2.4因果圖法
在一般情況下,因果法用來檢查需求規(guī)格說明書中所定義的輸入條件的各種組合情況,它是一種利用圖解的方法來解釋因與果之間的關(guān)系,基本符號(hào)通常有Ci(表原因)、Ei(表結(jié)果)和結(jié)點(diǎn)(有狀態(tài)0和1),其中原因和結(jié)果之間存在恒等、非、或和與四種關(guān)系;而原因與原因之間與結(jié)果與結(jié)果之間存在的約束條件有E(互斥)、I(包含)、O(唯一)、R(要求)和M(屏蔽)五種條件。
利用因果圖法設(shè)計(jì)測(cè)試用例的步驟如下:
(1)根據(jù)軟件需求規(guī)格說明書中所描述的內(nèi)容列出哪些是原因,哪些是結(jié)果,并給每條原因和每條結(jié)果分別賦予唯一的標(biāo)識(shí)符。
(2)依據(jù)軟件需求規(guī)格說明書中所描述的語(yǔ)義分析原因與結(jié)果的四種關(guān)系以及原因與原因、結(jié)果與結(jié)果之間所對(duì)應(yīng)的約束條件,并畫出因果圖。
(3)在因果圖上標(biāo)識(shí)出哪些原因與原因,原因與結(jié)果之間不可以出現(xiàn)的情況。
(4)把因果圖轉(zhuǎn)換成判定表。
(5)根據(jù)判定表的每一列分別設(shè)計(jì)測(cè)試用例。
通過上述主要的四種功能測(cè)試方法的學(xué)習(xí),我們不難發(fā)現(xiàn)功能測(cè)試的優(yōu)缺點(diǎn)。
優(yōu)點(diǎn):(1)功能測(cè)試相對(duì)白盒測(cè)試比較簡(jiǎn)單,因?yàn)樗恍枰私獬绦虻膬?nèi)部代碼的實(shí)現(xiàn)過程;(2)功能測(cè)試是基于需求規(guī)格說明書的文檔測(cè)試,也是站在用戶的角度出發(fā)的測(cè)試,它能夠很清楚地了解用戶需要哪些功能,以及可能會(huì)遇到哪些問題;(3)功能測(cè)試是基于文檔的測(cè)試,即軟件需求規(guī)格說明書;(4)功能測(cè)試做自動(dòng)化測(cè)試比較方便,可以大大的節(jié)約人力成本。
缺點(diǎn):(1)經(jīng)驗(yàn)表明,功能測(cè)試大概只能覆蓋到總代碼的30%,因此功能測(cè)試代碼覆蓋率低;(2)自動(dòng)化測(cè)試的重用性低。
因此,要對(duì)一個(gè)軟件產(chǎn)品做一個(gè)全面的測(cè)試時(shí),僅僅運(yùn)用功能測(cè)試方法是遠(yuǎn)遠(yuǎn)不夠的,要功能和結(jié)構(gòu)測(cè)試相結(jié)合,使軟件產(chǎn)品的質(zhì)量得到最大的保證。
參考文獻(xiàn):
[1]朱少民,軟件測(cè)試方法和技術(shù)[M].北京:清華大學(xué)出版社,2005.
[2]張向宏主編.軟件測(cè)試?yán)碚撆c實(shí)踐教程[M].北京:人民郵電出版社,2009.