?

軟件測試技術之功能測試方法探討與分析

2014-05-03 09:46英,薛
山東工業技術 2014年12期
關鍵詞:功能測試測試用例等價

李 英,薛 嵐

(江西信息應用職業技術學院 計算機技術系,南昌 330043)

軟件測試技術之功能測試方法探討與分析

李英,薛嵐

(江西信息應用職業技術學院計算機技術系,南昌330043)

摘要:軟件產品隨著計算機信息產業技術的迅速發展而規模越來越大,軟件測試技術也隨之發展,它是貫穿于整個軟件項目開發的過程檢驗軟件產品質量的最有效的方法之一,主要確認產品是否完成需求規格說明書中所設定的功能。本文主要討論了軟件測試技術的黑盒測試方法的功能測試,功能測試也可以被稱之為正確性測試,它主要檢查軟件產品的功能是否能夠滿足用戶的要求。由于功能測試牽涉到了軟件產品的正確性,所以功能測試在整個軟件測試技術中也是極為重要的。

關鍵字:軟件測試技術;軟件產品質量;功能測試;黑盒測試;正確性

1 功能測試技術簡介

軟件測試技術黑盒測試—功能測試也可以稱之為正確性測試。在測試過程中,把程序比作一個看不清、打不開的黑匣子,在完全不考慮程序的內部情況的前提下,測試人員只對程序的外部進行功能性測試。在進行功能性測試時,只是通過輸入數據、操作數據、輸出結果來檢驗軟件系統是否能夠按照需求規格說明書中用戶所要求的功能正常使用。

功能測試不可能把所有的輸入都作為測試用例來進行窮舉測試,所以我們必須從無限的輸入數據中選出極具有典型的測試數據來進行測試。功能測試的方法有很多種,其中有等價類劃分法、邊界值分析法、因果圖法、錯誤推測法、場景分析法等等。下面介紹幾種常用的功能測試方法:等價類劃分法、邊界值分析法、錯誤推測法和因果圖法。

2 功能測試方法

2.1等價類劃分

等價類的劃分根據程序的需求規格說明可以分成兩種不同等價類的情況:

(1)有效等價類:是指有意義的,合法的輸入數據構成的集合。

(2)無效等價類:是指無意義的,非法的輸入數據構成的集合。

在設計測試用例時,要在輸入域中分別對有效區域和無效區域進行有效等價類和無效等價類的設計;如何進行正確的等價類劃分?劃分等價類時有如下五個原則:

(1)如果輸入的條件是一個取值的范圍,那么則可以劃分成一個有效等價類(合法值,即取值合法的區域內)和兩個無效等價類(非法值,即取值的區域兩端外)。

(2)如果輸入的條件含有某種條件,比如說“必須如何”等,或者如果是有一組輸入值的集合,那么則可以劃分成一個有效等價類(滿足必須條件的所有值或輸入值的集合)和一個無效等價類(不滿足必須條件的所有值和除輸入值集合之外的所有值)。

(3)如果輸入條件是一個“True”或“False”的布爾值,那么則可以劃分一個有效等價類(布爾值為True)和一個無效等價類(布爾值為False)。

針對基于信號處理的滾動軸承復合故障診斷難的問題,提出一種基于NCA的滾動軸承復合故障智能診斷方法.為提高NCA的分類正確率及效率,用常規時域特征提取方法,對滾動軸承不同運行狀態的信號進行特征提取,將提取后的特征向量作為NCA的訓練及測試樣本,取得理想的分類效果.通過滾動軸承3種復合故障振動數據及正常狀態數據,驗證了所述方法的有效性.此外,通過與PCA分類效果對比,證明了所述方法的優越性,具有更高的分類正確率.

(4)如果輸入條件是程序對一組數據值要進行分別處理時,也就是程序定義了一組數據輸入的值,那么則N個有效等價類(每一個輸入值)和一個無效等價類(所有不允許的輸入值的一組集合)。

(5)如果輸入條件規定了一系列必須要遵守的規則,那么則可以劃分一個有效等價類(滿足所有要遵守的規則)和N個無效等價類(從若干個不同角度違反規則)。

等價類劃分完之后就可以建立等價類表,最后從劃分出的等價類表中設計選擇合適的測試用例。

輸入條件有效等價類無效等價類………………………………

2.2邊界值分析法

邊界值分析法是對輸入值臨界情況的一種考慮,它可以認為是對等價類劃分法的一種補充,也可以另外一個層面上來理解,也就是等價類劃分法中的一種特殊情況。

程序輸入值的數據類型可以有各種類型,例如數值、字符、位置、數量、速度、地址、尺寸等,這些類型都會包含確定的邊界,所以邊界值分析法應考慮邊界的情況,即臨界的值;此測試方法如果僅僅測試邊界線上的最后一個合法數據點往往是不夠充分的,它還應測試剛超過邊界的非法數據。

2.3錯誤推測法

錯誤推測法是通過測試人員的經驗和直覺推測程序中可能存在的各種錯誤,然后再根據所推測的錯誤設計具有針對性的測試用例。

2.4因果圖法

在一般情況下,因果法用來檢查需求規格說明書中所定義的輸入條件的各種組合情況,它是一種利用圖解的方法來解釋因與果之間的關系,基本符號通常有Ci(表原因)、Ei(表結果)和結點(有狀態0和1),其中原因和結果之間存在恒等、非、或和與四種關系;而原因與原因之間與結果與結果之間存在的約束條件有E(互斥)、I(包含)、O(唯一)、R(要求)和M(屏蔽)五種條件。

利用因果圖法設計測試用例的步驟如下:

(1)根據軟件需求規格說明書中所描述的內容列出哪些是原因,哪些是結果,并給每條原因和每條結果分別賦予唯一的標識符。

(2)依據軟件需求規格說明書中所描述的語義分析原因與結果的四種關系以及原因與原因、結果與結果之間所對應的約束條件,并畫出因果圖。

(3)在因果圖上標識出哪些原因與原因,原因與結果之間不可以出現的情況。

(4)把因果圖轉換成判定表。

(5)根據判定表的每一列分別設計測試用例。

3 功能測試的優缺點

通過上述主要的四種功能測試方法的學習,我們不難發現功能測試的優缺點。

優點:(1)功能測試相對白盒測試比較簡單,因為它不需要了解程序的內部代碼的實現過程;(2)功能測試是基于需求規格說明書的文檔測試,也是站在用戶的角度出發的測試,它能夠很清楚地了解用戶需要哪些功能,以及可能會遇到哪些問題;(3)功能測試是基于文檔的測試,即軟件需求規格說明書;(4)功能測試做自動化測試比較方便,可以大大的節約人力成本。

缺點:(1)經驗表明,功能測試大概只能覆蓋到總代碼的30%,因此功能測試代碼覆蓋率低;(2)自動化測試的重用性低。

因此,要對一個軟件產品做一個全面的測試時,僅僅運用功能測試方法是遠遠不夠的,要功能和結構測試相結合,使軟件產品的質量得到最大的保證。

參考文獻:

[1]朱少民,軟件測試方法和技術[M].北京:清華大學出版社,2005.

[2]張向宏主編.軟件測試理論與實踐教程[M].北京:人民郵電出版社,2009.

猜你喜歡
功能測試測試用例等價
某內花鍵等速傳動軸八功能測試夾具設計
基于相似性的CITCP強化學習獎勵策略①
等價轉化
測試用例自動生成技術綜述
n次自然數冪和的一個等價無窮大
將問題等價轉化一下再解答
等價轉化思想在高中數學中的應用
測試工時受限的測試策略研究
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合