測試方法之邊界值測試_第1頁
測試方法之邊界值測試_第2頁
測試方法之邊界值測試_第3頁
測試方法之邊界值測試_第4頁
測試方法之邊界值測試_第5頁
已閱讀5頁,還剩41頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

軟件測試方法一般分為兩種:白盒測試(WhiteBoxTesting)黑盒測試(Black-boxTesting)軟件測試方法

1黑盒測試(Black-boxTesting)軟件輸入輸出又叫功能測試,數據驅動測試或基于規格說明的測試。它是在已知產品所應具有的功能,通過測試來檢測每個功能是否都能正常使用。在測試時,把程序看作一個不能打開的黑盆子,在完全不考慮程序內部結構和內部特性的情況下,測試者在程序接口進行測試,它只檢查程序功能是否按照需求規格說明書的規定正常使用,程序是否能適當地接收輸入數鋸而產生正確的輸出信息,并且保持外部信息(如數據庫或文件)的完整性,如圖所示。黑盒測試不深入代碼細節2黑盒測試過程需求說明產生被測程序測試結果輸出3黑盒測試的目標黒盒測試試圖發現以下類型的錯誤:

功能錯誤或遺漏;界面錯誤,不美觀;外部信息訪問錯誤;性能錯誤;初始化和終止錯誤;在接口上,能否正確地接受輸入數據,能否產生正確地輸出信息;4黑盒測試有兩種基本類型,即通過測試和失敗測試。在進行通過測試時,實際上是確認軟件能做什么,而不會去考驗其能力如何。軟件測試員只運用最簡單,最直觀的測試案例。在設計和執行測試案例時,總是先要進行通過測試。在進行破壞性試驗之前,看一看軟件基本功能是否能夠實現。這一點很重要,否則在正常使用軟件時就會奇怪地發現,為什么會有那么多的軟件缺陷出現?在確信了軟件正確運行之后,就可以采取各種手段通過搞“垮”軟件來找出缺陷。純粹為了破壞軟件而設計和執行的測試案例,被稱為失敗測試或迫使出錯測試。黑盒測試的類型5黑盒測試的難點黒盒測試的難點在于如何構造有效的輸入。

由于輸入空間通常是無限的,窮舉測試顯然行不通。尋找最小最重要的用例集合以精簡測試復雜性。黑盒測試的優點有:1)比較簡單,不需要了解程序內部的代碼及實現;2)與軟件的內部實現無關;3)從用戶角度出發,能很容易的知道用戶會用到哪些功能,會遇到哪些問題;4)基于軟件開發文檔,所以也能知道軟件實現了文檔中的哪些功能;5)在做軟件自動化測試時較為方便。黑盒測試的缺點有:1)不可能覆蓋所有的代碼,覆蓋率較低,大概只能達到總代碼量的30%;2)自動化測試的復用性較低。6黑盒測試方法黑盒測試的測試用例設計方法.邊界值分析.等價類劃分.因果圖.錯誤推測.基于決策表的測試.功能圖分析方法7邊界值測試(內容)邊界值分析健壯性測試最壞情況測試特殊值測試隨機測試

81.邊界值分析邊界值分析的原理邊界值分析的思想邊界值分析測試用例設計方法9(1)邊界值分析的基本原理邊界值分析(BoundaryValueAnalysis)基本原理錯誤更可能出現在輸入變量的極值附近。邊界值分析關注輸入空間的邊界,并從中標識測試用例。10常見的邊界值舉例).對16-bit的整數而言32767和-32768是邊界).屏幕上光標在最左上、最右下位置).報表的第一行和最后一行).數組元素的第一個和最后一個

C++語言中,intA[10]:A[0]…A[9]

).循環的第0次、第1次和倒數第2次、最后一次

11邊界值分析的基本思想在最小值、略高于最小值、正常值、略低于最大值和最大值處取輸入變量值表示方法min、min+、nom、max-、和max例如:涉及兩個變量的函數x1,x2X1的取值x1min,x1min+,x1nom,x1max-,x1maxX2的取值x2min,x2min+,x2nom,x2max-,x2max12邊界值分析的取值13“單缺陷”假設“單缺陷”假設

失效極少是由兩個或多個缺陷的同時發生引起的

“單缺陷”假設是邊界值分析的關鍵假設14(3)邊界值分析測試用例邊界值分析獲得測試用例的方法:使所有變量取正常值,只使一個變量取極值;對于一個n變量函數,邊界值分析會產生4n+1個測試用例。

15X1取值:x1min,x1min+

,x1nom,x1max-,x1maxX2取值:x2min,x2min+,x2nom,x2max-,x2max兩個變量函數的邊界值分析測試用例{<x1nom,x2min>,<x1nom,x2min+>,<x1nom,x2nom>,<x1nom,x2max->,<x1nom,x2max>,<x1min,x2nom>,<x1min+,x2nom>,<x1max-,x2nom>,<x1max,x2nom>}

兩個變量函數邊界值分析測試用例16X2兩個變量函數邊界值分析測試用例17舉例:三角形問題三角形問題描述三條邊a,b,c取整數值,且各邊的取值范圍是:[1,200]邊界值分析設計測試用例每條邊的取值:

1,2,100,199,200測試用例數目:4n+1三角形問題(n=3):用例數為131819練習:NextDate函數輸入條件1≤月份≤121≤日期≤311812≤年≤2012請用邊界值分析設計測試用例20(4)邊界值分析優缺點邊界值測試分析采用了可靠性理論的單缺陷假設。優點:簡便易行;生成測試數據的成本很低;

局限性:測試用例不充分;不能發現測試變量之間的依賴關系;不考慮含義和性質;結論:只能作為初步測試用例使用212.健壯性測試健壯性是指在異常情況下,軟件還能正常運行的能力。健壯性有兩層含義:

容錯能力

恢復能力

22容錯性測試通常構造一些不合理的輸入來引誘軟件出錯,例如:

(1)輸入錯誤的數據類型。如“猴”年“馬”月。

(2)輸入定義域之外的數值。粗暴一些方式俗稱“大猩猩”測試法。除了不能拳打腳踢嘴咬外,什么招術都可以使出來。例如在測試客戶機-服務器模式的軟件時,把網絡線拔掉,造成通信異常中斷。恢復測試重點考察一下幾項:

(1)系統能否重新運行;

(2)有無重要的數據丟失;

(3)是否毀壞了其它相關的軟件硬件。23健壯性測試的基本思想健壯性測試是邊界值分析的一種簡單擴展,除了使用五個邊界值分析取值,還要過采用:一個略超過最大值(max+)的取值一個略小于最小值(min-)的取值

24X2兩個變量函數的健壯性測試用例25健壯性測試的討論健壯性測試最有意思的部分不是輸入而是預期的輸出健壯性測試的主要價值是觀察異常情況的處理軟件質量要素的衡量標準:軟件的容錯性軟件容錯性的度量:從非法輸入中恢復

26健壯性測試的測試用例個數

一個變量個數為n的函數的健壯性測試會產生多少個測試用例?

6n+1?思考:273.最壞情況測試最壞情況測試的基本思想邊界值測試分析采用了可靠性理論的單缺陷假設最壞情況測試拒絕這種假設,關心當多個變量取極值時會出現什么情況?28最壞情況測試用例設計方法對每一個變量首先進行包含最小值、略高于最小值、正常值、略低于最大值、最大值五個元素集合的測試,然后對這些集合進行笛卡爾積計算,以生成測試用例。一個變量個數為n的函數的最壞情況測試會產生5n個測試用例。

29兩變量函數的最壞情況測試用例X230最壞情況與邊界值分析的比較基本邊界值分析測試用例是最壞情況測試用例的真子集。最壞情況測試顯然更徹底最壞情況測試工作量大得多n變量函數的最壞情況測試會產生5的n次方個測試用例,邊界值分析只產生4n+1個測試用例。31最壞情況測試舉例(1)三角形問題三條邊a,b,c取整數值,且各邊的取值范圍是:[1,200]最壞情況測試用例每條邊的取值:1,2,100,199,200測試用例數目:5n三角形問題(n=3):用例數為125測試用例:見教材76頁。32NextDate的測試用例輸入條件1≤月份≤121≤日期≤311812≤年≤2012最壞情況測試用例設計月份取值:1,2,6,11,12日期取值:1,2,15,30,31年取值:1812,1813,1912,2011,2012最壞情況測試舉例(2)33NextDate的測試用例測試用例數目

n=3,5n=125測試用例見教材79-82頁錯誤的測試用例第41行:1812年2月30日遺漏重要的測試用例日期取28或29閏年:2000年最壞情況測試舉例(2)34健壯最壞情況測試對于確實極端的測試,會采用健壯最壞情況測試,這種測試使用健壯性測試的7個元素集合。對每一個變量,首先進行包含最小值、略高于最小值、正常值、略低于最大值、最大值五個元素集合的測試,還要采用一個略超過最大值的取值,以及一個略小于最小值的取值。然后對這些集合進行笛卡爾積計算以生成7的n次方個測試用例。35兩變量函數的健壯最壞情況測試用例364.特殊值測試邊界值分析假定n個變量是相互獨立的,沒有考慮這些變量之間的相互依賴關系;特殊值測試使用領域知識、使用類似程序的經驗開發測試用例的特殊值。37特殊值測試特點:最直觀、最不一致、具有高度主觀性。特殊值測試特別依賴測試人員的能力雖然特殊值測試是高度主觀性的,但是能更有效地發現缺陷例如:2月28日、2月29日385.隨機測試隨機測試的基本思想不是永遠選取有界變量的最小值、略高于最小值、正常值、略低于最大值和最大值,而是使用隨機數生成器選出測試用例值。39隨機測試的一種實現方法有界變量a≤x≤b值的一個VisualBasic應用程序生成的x,滿足下式:

x=Int(b-a+1)*Rnd+a函數Int返回浮點數的整數部分函數Rnd生成區間[0,1]內的隨機數

40選擇測試用例原則

1)如果輸入條件規定了值的范圍,則應取剛達到這個范圍的邊界的值,以及剛剛超越這個范圍邊界的值作為測試輸入數據。例如,如果程序的規格說明中規定:"重量在10公斤至50公斤范圍內的郵件,其郵費計算公式為……"。作為測試用例,我們應取10及50,還應取10.01,49.99,9.99及50.01等。41選擇測試用例原則

2)如果輸入條件規定了值的個數,則用最大個數,最小個數,比最小個數少一,比最大個數多一的數作為測試數據。比如,一個輸入文件應包括1~255個記錄,則測試用例可取1和255,還應取0及256等。42選擇測試用例原則3)將規則1)和2)應用于輸出條件,即設計測試用例使輸出值達到邊界值及其左右的值。例如,某程序的規格說明要求計算出"每月保險金扣除額為0至1165.25元",其測試用例可取0.00及1165.24、還可取一0.01及1165.26等。

再如一程序屬于情報檢索系統,要求每次"最少顯示1條、最多顯示4條情報摘要",這時我們應考慮的測試用例包括1和4,還應包括0和5等。43選擇測試用例原則

4)如果程序的規格說明給出的輸入域或輸出域是有序集合,則應選取集合的第一個元素和最后一個元素作為測試用例。

5)如果程序中使用了一個內部數據結構,則應當選擇這個內部數據結構的邊界上的值作為測試用例。

6)分析規格說明,找出其它可能的邊界條件。44在用到邊界值得方法得時候,會看到這樣得描述或者聽到這樣得描述,那么究竟什么是上點,內點和離點呢?上點:就是指得邊界上得點,無論此時得域是開區間還是閉區間,開區間得話,上點就是在域外,閉

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論