測試方法之邊界值測試_第1頁
測試方法之邊界值測試_第2頁
測試方法之邊界值測試_第3頁
測試方法之邊界值測試_第4頁
測試方法之邊界值測試_第5頁
已閱讀5頁,還剩38頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

測試方法之邊界值測試1第一頁,共四十三頁,編輯于2023年,星期日黑盒測試(Black-boxTesting)軟件輸入輸出又叫功能測試,數(shù)據(jù)驅(qū)動(dòng)測試或基于規(guī)格說明的測試。它是在已知產(chǎn)品所應(yīng)具有的功能,通過測試來檢測每個(gè)功能是否都能正常使用。在測試時(shí),把程序看作一個(gè)不能打開的黑盆子,在完全不考慮程序內(nèi)部結(jié)構(gòu)和內(nèi)部特性的情況下,測試者在程序接口進(jìn)行測試,它只檢查程序功能是否按照需求規(guī)格說明書的規(guī)定正常使用,程序是否能適當(dāng)?shù)亟邮蛰斎霐?shù)鋸而產(chǎn)生正確的輸出信息,并且保持外部信息(如數(shù)據(jù)庫或文件)的完整性,如圖所示。黑盒測試不深入代碼細(xì)節(jié)2第二頁,共四十三頁,編輯于2023年,星期日黑盒測試過程需求說明產(chǎn)生被測程序測試結(jié)果輸出3第三頁,共四十三頁,編輯于2023年,星期日黑盒測試的目標(biāo)黒盒測試試圖發(fā)現(xiàn)以下類型的錯(cuò)誤:

功能錯(cuò)誤或遺漏;界面錯(cuò)誤,不美觀;外部信息訪問錯(cuò)誤;性能錯(cuò)誤;初始化和終止錯(cuò)誤;在接口上,能否正確地接受輸入數(shù)據(jù),能否產(chǎn)生正確地輸出信息;4第四頁,共四十三頁,編輯于2023年,星期日黑盒測試有兩種基本類型,即通過測試和失敗測試。在進(jìn)行通過測試時(shí),實(shí)際上是確認(rèn)軟件能做什么,而不會(huì)去考驗(yàn)其能力如何。軟件測試員只運(yùn)用最簡單,最直觀的測試案例。在設(shè)計(jì)和執(zhí)行測試案例時(shí),總是先要進(jìn)行通過測試。在進(jìn)行破壞性試驗(yàn)之前,看一看軟件基本功能是否能夠?qū)崿F(xiàn)。這一點(diǎn)很重要,否則在正常使用軟件時(shí)就會(huì)奇怪地發(fā)現(xiàn),為什么會(huì)有那么多的軟件缺陷出現(xiàn)?在確信了軟件正確運(yùn)行之后,就可以采取各種手段通過搞“垮”軟件來找出缺陷。純粹為了破壞軟件而設(shè)計(jì)和執(zhí)行的測試案例,被稱為失敗測試或迫使出錯(cuò)測試。黑盒測試的類型5第五頁,共四十三頁,編輯于2023年,星期日黑盒測試的難點(diǎn)黒盒測試的難點(diǎn)在于如何構(gòu)造有效的輸入。

由于輸入空間通常是無限的,窮舉測試顯然行不通。尋找最小最重要的用例集合以精簡測試復(fù)雜性。黑盒測試的優(yōu)點(diǎn)有:1)比較簡單,不需要了解程序內(nèi)部的代碼及實(shí)現(xiàn);2)與軟件的內(nèi)部實(shí)現(xiàn)無關(guān);3)從用戶角度出發(fā),能很容易的知道用戶會(huì)用到哪些功能,會(huì)遇到哪些問題;4)基于軟件開發(fā)文檔,所以也能知道軟件實(shí)現(xiàn)了文檔中的哪些功能;5)在做軟件自動(dòng)化測試時(shí)較為方便。黑盒測試的缺點(diǎn)有:1)不可能覆蓋所有的代碼,覆蓋率較低,大概只能達(dá)到總代碼量的30%;2)自動(dòng)化測試的復(fù)用性較低。6第六頁,共四十三頁,編輯于2023年,星期日黑盒測試方法黑盒測試的測試用例設(shè)計(jì)方法.邊界值分析.等價(jià)類劃分.因果圖.錯(cuò)誤推測.基于決策表的測試.功能圖分析方法7第七頁,共四十三頁,編輯于2023年,星期日邊界值測試(內(nèi)容)邊界值分析健壯性測試最壞情況測試特殊值測試隨機(jī)測試

8第八頁,共四十三頁,編輯于2023年,星期日1.邊界值分析邊界值分析的原理邊界值分析的思想邊界值分析測試用例設(shè)計(jì)方法9第九頁,共四十三頁,編輯于2023年,星期日(1)邊界值分析的基本原理邊界值分析(BoundaryValueAnalysis)基本原理錯(cuò)誤更可能出現(xiàn)在輸入變量的極值附近。邊界值分析關(guān)注輸入空間的邊界,并從中標(biāo)識(shí)測試用例。10第十頁,共四十三頁,編輯于2023年,星期日常見的邊界值舉例).對(duì)16-bit的整數(shù)而言32767和-32768是邊界).屏幕上光標(biāo)在最左上、最右下位置).報(bào)表的第一行和最后一行).數(shù)組元素的第一個(gè)和最后一個(gè)

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

).循環(huán)的第0次、第1次和倒數(shù)第2次、最后一次

11第十一頁,共四十三頁,編輯于2023年,星期日邊界值分析的基本思想在最小值、略高于最小值、正常值、略低于最大值和最大值處取輸入變量值表示方法min、min+、nom、max-、和max例如:涉及兩個(gè)變量的函數(shù)x1,x2X1的取值x1min,x1min+,x1nom,x1max-,x1maxX2的取值x2min,x2min+,x2nom,x2max-,x2max12第十二頁,共四十三頁,編輯于2023年,星期日邊界值分析的取值13第十三頁,共四十三頁,編輯于2023年,星期日“單缺陷”假設(shè)“單缺陷”假設(shè)

失效極少是由兩個(gè)或多個(gè)缺陷的同時(shí)發(fā)生引起的

“單缺陷”假設(shè)是邊界值分析的關(guān)鍵假設(shè)14第十四頁,共四十三頁,編輯于2023年,星期日(3)邊界值分析測試用例邊界值分析獲得測試用例的方法:使所有變量取正常值,只使一個(gè)變量取極值;對(duì)于一個(gè)n變量函數(shù),邊界值分析會(huì)產(chǎn)生4n+1個(gè)測試用例。

15第十五頁,共四十三頁,編輯于2023年,星期日X1取值:x1min,x1min+

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

兩個(gè)變量函數(shù)邊界值分析測試用例16第十六頁,共四十三頁,編輯于2023年,星期日X2兩個(gè)變量函數(shù)邊界值分析測試用例17第十七頁,共四十三頁,編輯于2023年,星期日舉例:三角形問題三角形問題描述三條邊a,b,c取整數(shù)值,且各邊的取值范圍是:[1,200]邊界值分析設(shè)計(jì)測試用例每條邊的取值:

1,2,100,199,200測試用例數(shù)目:4n+1三角形問題(n=3):用例數(shù)為1318第十八頁,共四十三頁,編輯于2023年,星期日19第十九頁,共四十三頁,編輯于2023年,星期日練習(xí):NextDate函數(shù)輸入條件1≤月份≤121≤日期≤311812≤年≤2012請(qǐng)用邊界值分析設(shè)計(jì)測試用例20第二十頁,共四十三頁,編輯于2023年,星期日(4)邊界值分析優(yōu)缺點(diǎn)邊界值測試分析采用了可靠性理論的單缺陷假設(shè)。優(yōu)點(diǎn):簡便易行;生成測試數(shù)據(jù)的成本很低;

局限性:測試用例不充分;不能發(fā)現(xiàn)測試變量之間的依賴關(guān)系;不考慮含義和性質(zhì);結(jié)論:只能作為初步測試用例使用21第二十一頁,共四十三頁,編輯于2023年,星期日2.健壯性測試健壯性是指在異常情況下,軟件還能正常運(yùn)行的能力。健壯性有兩層含義:

容錯(cuò)能力

恢復(fù)能力

22第二十二頁,共四十三頁,編輯于2023年,星期日容錯(cuò)性測試通常構(gòu)造一些不合理的輸入來引誘軟件出錯(cuò),例如:

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

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

(1)系統(tǒng)能否重新運(yùn)行;

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

(3)是否毀壞了其它相關(guān)的軟件硬件。23第二十三頁,共四十三頁,編輯于2023年,星期日健壯性測試的基本思想健壯性測試是邊界值分析的一種簡單擴(kuò)展,除了使用五個(gè)邊界值分析取值,還要過采用:一個(gè)略超過最大值(max+)的取值一個(gè)略小于最小值(min-)的取值

24第二十四頁,共四十三頁,編輯于2023年,星期日X2兩個(gè)變量函數(shù)的健壯性測試用例25第二十五頁,共四十三頁,編輯于2023年,星期日健壯性測試的討論健壯性測試最有意思的部分不是輸入而是預(yù)期的輸出健壯性測試的主要價(jià)值是觀察異常情況的處理軟件質(zhì)量要素的衡量標(biāo)準(zhǔn):軟件的容錯(cuò)性軟件容錯(cuò)性的度量:從非法輸入中恢復(fù)

26第二十六頁,共四十三頁,編輯于2023年,星期日健壯性測試的測試用例個(gè)數(shù)

一個(gè)變量個(gè)數(shù)為n的函數(shù)的健壯性測試會(huì)產(chǎn)生多少個(gè)測試用例?6n+1?思考:27第二十七頁,共四十三頁,編輯于2023年,星期日3.最壞情況測試最壞情況測試的基本思想邊界值測試分析采用了可靠性理論的單缺陷假設(shè)最壞情況測試拒絕這種假設(shè),關(guān)心當(dāng)多個(gè)變量取極值時(shí)會(huì)出現(xiàn)什么情況?28第二十八頁,共四十三頁,編輯于2023年,星期日最壞情況測試用例設(shè)計(jì)方法對(duì)每一個(gè)變量首先進(jìn)行包含最小值、略高于最小值、正常值、略低于最大值、最大值五個(gè)元素集合的測試,然后對(duì)這些集合進(jìn)行笛卡爾積計(jì)算,以生成測試用例。一個(gè)變量個(gè)數(shù)為n的函數(shù)的最壞情況測試會(huì)產(chǎn)生5n個(gè)測試用例。

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

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

x=Int(b-a+1)*Rnd+a函數(shù)Int返回浮點(diǎn)數(shù)的整數(shù)部分函數(shù)Rnd生成區(qū)間[0,1]內(nèi)的隨機(jī)數(shù)

40第四十頁,共四十三頁,編輯于2023年,星期日選擇測試用例原則

1)如果輸入條件規(guī)定了值的范圍,

溫馨提示

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

評(píng)論

0/150

提交評(píng)論