軟件測(cè)試(宮云戰(zhàn)版)第2章_第1頁(yè)
已閱讀1頁(yè),還剩64頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、第2章 黑盒測(cè)試,黑盒測(cè)試是一種常用的軟件測(cè)試方法,它將被測(cè)軟件看作一個(gè)打不開(kāi)的黑盒,主要根據(jù)功能需求設(shè)計(jì)測(cè)試用例,進(jìn)行測(cè)試。本章主要介紹幾種常用的黑盒測(cè)試方法和黑盒測(cè)試工具,并通過(guò)實(shí)例介紹各種方法的運(yùn)用。,第2章 黑盒測(cè)試,2.1黑盒測(cè)試的基本概念2.2 等價(jià)類劃分2.3邊界值分析法2.4 因果圖法2.5 決策表法2.6 黑盒測(cè)試方法的比較與選擇2.7 黑盒測(cè)試工具介紹,2.1黑盒測(cè)試的基本概念,黑盒測(cè)試是從一種從軟件外部

2、對(duì)軟件實(shí)施的測(cè)試,也稱功能測(cè)試或基于規(guī)格說(shuō)明的測(cè)試。其基本觀點(diǎn)是:任何程序都可以看作是從輸入定義域到輸出值域的映射,這種觀點(diǎn)將被測(cè)程序看作一個(gè)打不開(kāi)的黑盒,黑盒里面的內(nèi)容(實(shí)現(xiàn))是完全不知道的,只知道軟件要做什么。因無(wú)法看到盒子中的內(nèi)容,所以不知道軟件是如何實(shí)現(xiàn)的,也不關(guān)心黑盒里面的結(jié)構(gòu),只關(guān)心軟件的輸入數(shù)據(jù)和輸出結(jié)果。,2.1黑盒測(cè)試的基本概念,黑盒測(cè)試是從用戶觀點(diǎn)出發(fā)的測(cè)試,其目的是盡可能發(fā)現(xiàn)軟件的外部行為錯(cuò)誤。在已知軟件產(chǎn)品功能的

3、基礎(chǔ)上,檢測(cè)軟件功能能否按照需求規(guī)格說(shuō)明書(shū)的規(guī)定正常工作,是否有功能遺漏;檢測(cè)是否有人機(jī)交互錯(cuò)誤,是否有數(shù)據(jù)結(jié)構(gòu)和外部數(shù)據(jù)庫(kù)訪問(wèn)錯(cuò)誤,是否能恰當(dāng)?shù)亟邮諗?shù)據(jù)并保持外部信息(如數(shù)據(jù)庫(kù)或文件)等的完整性;檢測(cè)行為、性能等特性是否滿足要求等;檢測(cè)程序初始化和終止方面的錯(cuò)誤等。,2.1黑盒測(cè)試的基本概念,黑盒測(cè)試著眼于軟件的外部特征,通過(guò)上述方面的檢測(cè),確定軟件所實(shí)現(xiàn)的功能是否按照軟件規(guī)格說(shuō)明書(shū)的預(yù)期要求正常工作. 兩個(gè)顯著的優(yōu)點(diǎn)

4、:① 黑盒測(cè)試與軟件具體實(shí)現(xiàn)無(wú)關(guān),所以如果軟件實(shí)現(xiàn)發(fā)生了變化,測(cè)試用例仍然可以使用;② 設(shè)計(jì)黑盒測(cè)試用例可以和軟件實(shí)現(xiàn)同時(shí)進(jìn)行,因此可以壓縮項(xiàng)目總的開(kāi)發(fā)時(shí)間。,2.1黑盒測(cè)試的基本概念,窮舉輸入測(cè)試是不現(xiàn)實(shí)的。這就需要我們認(rèn)真研究測(cè)試方法,以便能開(kāi)發(fā)出盡可能少的測(cè)試用例,發(fā)現(xiàn)盡可能多的軟件故障。 常用的黑盒測(cè)試方法有等價(jià)類劃分、邊界值分析、決策表測(cè)試等,每種方法各有所長(zhǎng),我們應(yīng)針對(duì)軟件開(kāi)發(fā)項(xiàng)目的具體特點(diǎn),選擇合適的

5、測(cè)試方法,有效地解決軟件開(kāi)發(fā)中的測(cè)試問(wèn)題。,2.2 等價(jià)類劃分,等價(jià)類劃分法是一種典型的黑盒測(cè)試方法,它完全不考慮程序的內(nèi)部結(jié)構(gòu),只根據(jù)程序規(guī)格說(shuō)明書(shū)對(duì)輸入范圍進(jìn)行劃分,把所有可能的輸入數(shù)據(jù),即程序輸入域劃分為若干個(gè)互不相交的子集,稱為等價(jià)類,然后從每個(gè)等價(jià)類中選取少數(shù)具有代表性的數(shù)據(jù)作為測(cè)試用例,進(jìn)行測(cè)試。,2.2 等價(jià)類劃分,2.2.1等價(jià)類劃分方法 所謂等價(jià)類是指輸入域的某個(gè)互不相交的子集合,所有等價(jià)類的并便是

6、整個(gè)輸入域。 1.劃分等價(jià)類(1)有效等價(jià)類檢驗(yàn)程序是否實(shí)現(xiàn)了規(guī)格說(shuō)明預(yù)先規(guī)定的功能和性能。(2)無(wú)效等價(jià)類檢查軟件功能和性能的實(shí)現(xiàn)是否有不符合規(guī)格說(shuō)明要求的地方。,2.2.1等價(jià)類劃分方法,2.常用的等價(jià)類劃分原則(1)按區(qū)間劃分(2)按數(shù)值劃分(3)按數(shù)值集合劃分(4)按限制條件或規(guī)則劃分(5)細(xì)分等價(jià)類,2.2.1等價(jià)類劃分方法,在確立了等價(jià)類之后,可按表2.1的形式列出所有劃分出的等價(jià)類表:

7、 表2.1 等價(jià)類表 同樣,也可按照輸出條件,將輸出域劃分為若干個(gè)等價(jià)類。,2.2.1等價(jià)類劃分方法,3.等價(jià)類劃分測(cè)試用例設(shè)計(jì) 在設(shè)計(jì)測(cè)試用例時(shí)應(yīng)同時(shí)考慮有效等價(jià)類和無(wú)效等價(jià)類測(cè)試用例的設(shè)計(jì)。根據(jù)等價(jià)類表設(shè)計(jì)測(cè)試用例,具體步驟如下: (1)為每個(gè)等價(jià)類規(guī)定一個(gè)唯一的編號(hào)。 (2) 設(shè)計(jì)一個(gè)新的測(cè)試用例,盡可能多地覆蓋尚未被覆蓋的有效

8、等價(jià)類,重復(fù)這一步,直到測(cè)試用例覆蓋了所有的有效等價(jià)類。 (3) 設(shè)計(jì)一個(gè)新的測(cè)試用例,使其覆蓋并且只覆蓋一個(gè)還沒(méi)有被覆蓋的無(wú)效等價(jià)類。重復(fù)這一步,直至測(cè)試用例覆蓋了所有的無(wú)效等價(jià)類。,2.2 等價(jià)類劃分,2.2.2 等價(jià)類劃分法的測(cè)試運(yùn)用 1.三角形問(wèn)題的等價(jià)類測(cè)試 【例2.1】 三角形問(wèn)題是軟件測(cè)試文獻(xiàn)中使用最廣泛的一個(gè)例子。輸入三個(gè)整數(shù)a、b和c分別作為三角形的3條邊,通過(guò)程序判斷由這3條邊構(gòu)成的三角形類型是

9、:等邊三角形、等腰三角形、一般三角形或非三角形(不能構(gòu)成一個(gè)三角形)。,2.2.2 等價(jià)類劃分法的測(cè)試運(yùn)用,三角形問(wèn)題可以更詳細(xì)地描述為: 輸入3個(gè)整數(shù)a、b和c分別作為三角形的三條邊,要求a、b和c必須滿足以下條件: Con1.1≤a≤10 Con 2.1≤b≤100 Con 3.1≤c≤100 Con 4.a(chǎn)

10、<b+c Con 5.b<a+c Con 6.c<a+b,,如果a、b和c滿足Con1、Con2和Con3,則輸出為4種情況之一:①.如果不滿足條件Con 4、Con 5和Con 6中有一個(gè),則程序輸出為“非三角形”。②.如果三條邊相等,則程序輸出為“等邊三角形”。③.如果恰好有兩條邊相等,則程序輸出為“等腰三角形”。④.如果三條邊都不相等,則程序

11、輸出為“一般三角形”。,2.2.2 等價(jià)類劃分法的測(cè)試運(yùn)用,2.保險(xiǎn)公司人壽保險(xiǎn)保費(fèi)計(jì)算程序的等價(jià)類測(cè)試【例2.2】 某保險(xiǎn)公司人壽保險(xiǎn)的保費(fèi)計(jì)算方式為: 保費(fèi)=投保額×保險(xiǎn)費(fèi)率 其中,保險(xiǎn)費(fèi)率根據(jù)年齡、性別、婚姻狀況和撫養(yǎng)人數(shù)的不同而有所不同,體現(xiàn)在不同年齡、性別、婚姻狀況和撫養(yǎng)人數(shù),點(diǎn)數(shù)設(shè)定不同,10點(diǎn)及10點(diǎn)以上保險(xiǎn)費(fèi)率為0.6%,10點(diǎn)以下保險(xiǎn)費(fèi)率為0.1%;而點(diǎn)數(shù)又是由投

12、保人的年齡、性別、婚姻狀況和撫養(yǎng)人數(shù)來(lái)決定,具體規(guī)則見(jiàn)表2.5。,2.2.2 等價(jià)類劃分法的測(cè)試運(yùn)用,分析程序規(guī)格說(shuō)明中給出和隱含的對(duì)輸入數(shù)據(jù)的要求,可以得出: ① 年齡:一位或兩位非零整數(shù),取值的有效范圍為1~99。 ② 性別:一位英文字符,只能取 ‘M’或’F’ 值。 ③ 婚姻:字符,只能取‘已婚’或‘未婚’。 ④ 撫養(yǎng)人數(shù):空白或字符‘無(wú)’或一位非零整數(shù)(1~9) ⑤ 點(diǎn)數(shù) :一位或兩位非零

13、整數(shù),取值范圍為8~19 通過(guò)對(duì)規(guī)格說(shuō)明輸入數(shù)據(jù)的取值分析,可以得出保險(xiǎn)公司人壽保險(xiǎn)保費(fèi)計(jì)算程序的等價(jià)類。,2.2.2 等價(jià)類劃分法的測(cè)試運(yùn)用,等價(jià)類測(cè)試存在兩個(gè)問(wèn)題: 一是規(guī)格說(shuō)明往往沒(méi)有定義無(wú)效測(cè)試用例的期望輸出應(yīng)該是什么樣的。因此,測(cè)試人員需要花費(fèi)大量時(shí)間來(lái)定義這些測(cè)試用例的期望輸出。 二是強(qiáng)類型語(yǔ)言沒(méi)有必要考慮無(wú)效輸入。傳統(tǒng)等價(jià)類測(cè)試是諸如FORTRAN和COBOL這樣的語(yǔ)

14、言占統(tǒng)治地位年代的產(chǎn)物,那時(shí)這種無(wú)效輸入的故障很常見(jiàn)。事實(shí)上,正是由于經(jīng)常出現(xiàn)這種錯(cuò)誤,才促使人們使用強(qiáng)類型語(yǔ)言。,2.3邊界值分析法,大量的軟件測(cè)試實(shí)踐表明,故障往往出現(xiàn)在定義域或值域的邊界上,而不是在其內(nèi)部。為檢測(cè)邊界附近的處理專門(mén)設(shè)計(jì)測(cè)試用例,通常都會(huì)取得很好的測(cè)試效果。因此邊界值分析法是一種很實(shí)用的黑盒測(cè)試用例方法,它具有很強(qiáng)的發(fā)現(xiàn)故障的能力。,2.3.1 邊界值分析法,1.邊界條件邊界是一些特殊情況。程序在處理大量中間數(shù)值時(shí)

15、都是正確,但是在邊界處可能出現(xiàn)錯(cuò)誤。邊界條件就是軟件計(jì)劃的操作界限所在的邊緣條件。一些可能與邊界有關(guān)的數(shù)據(jù)類型有:數(shù)值,速度,字符,地址,位置,尺寸,數(shù)量等。同時(shí),考慮這些數(shù)據(jù)類型的下述特征: 第一個(gè)/最后一個(gè),最小值/最大值,開(kāi)始/完成,超過(guò)/在內(nèi),空/滿,最短/最長(zhǎng),最慢/最快,最早/最遲,最高/最低,相鄰/最遠(yuǎn)等。,2.3.1 邊界值分析法,其實(shí)邊界值和等價(jià)類密切相關(guān),輸入等價(jià)類和輸出等價(jià)類的邊界是要著

16、重測(cè)試的邊界情況。在等價(jià)類的劃分過(guò)程中產(chǎn)生了許多等價(jià)類邊界。邊界是最容易出錯(cuò)的地方,所以,從等價(jià)類中選取測(cè)試數(shù)據(jù)時(shí)應(yīng)該關(guān)注邊界值。 在等價(jià)類劃分基礎(chǔ)上進(jìn)行邊界值分析測(cè)試的基本思想是,選取正好等于、剛剛大于或剛剛小于等價(jià)類邊界的值作為測(cè)試數(shù)據(jù),而不是選取等價(jià)類中的典型值或任意值做為測(cè)試數(shù)據(jù)。,2.3.1 邊界值分析法,2.邊界值分析測(cè)試 這里討論一個(gè)有兩個(gè)變量x1和x2的程序P。假設(shè)輸入變量x1和x2在

17、下列范圍內(nèi)取值: a≤x1≤b, c≤x2≤d 邊界值分析利用輸入變量的最小值(min),稍大于最小值(min+),域內(nèi)任意值(nom),稍小于最大值(max-),最大值(max)來(lái)設(shè)計(jì)測(cè)試用例。即通過(guò)使所有變量取正常值,只使一個(gè)變量分別去最小值,略高于最小值、略低于最大值和最大值。,2.3.1 邊界值分析法,對(duì)于一個(gè)n變量的程序,邊界值分析測(cè)試會(huì)產(chǎn)生4n+1個(gè)測(cè)試用例

18、。,2.3.1 邊界值分析法,3. 健壯性邊界值測(cè)試 健壯性測(cè)試是邊界值分析的一種擴(kuò)展。 變量除了取min,min+,nom,max-,max五個(gè)邊界值外,還要考慮采用一個(gè)略超過(guò)最大值(max+)以及一個(gè)略小于最小值(min-)的取值,看看超過(guò)極限值時(shí)系統(tǒng)會(huì)出現(xiàn)什么情況。,2.3.1 邊界值分析法,健壯性邊界值測(cè)試將產(chǎn)生6n+1個(gè)測(cè)試用例. 健壯性測(cè)試最有意義的部分不是輸人

19、,而是預(yù)期的輸出,觀察例外情況如何處理。,2.3邊界值分析法,2.3.2邊界值分析法的測(cè)試運(yùn)用 1. 三角形問(wèn)題的邊界值分析測(cè)試用例設(shè)計(jì) 邊界值分析測(cè)試用例,2.3.2邊界值分析法的測(cè)試運(yùn)用,2.加法器邊界值測(cè)試用例設(shè)計(jì)【例2.4】 加法器程序計(jì)算兩個(gè)1~100之間整數(shù)的和。 對(duì)于加法器程序,根據(jù)輸入要求可將輸入空間劃分為三個(gè)等價(jià)類,即1個(gè)有效等價(jià)類(

20、1~100之間),兩個(gè)無(wú)效等價(jià)類(100)。但這種等價(jià)類劃分不是很完善,我們只考慮了輸入數(shù)據(jù)的取值范圍,而沒(méi)有考慮輸入數(shù)據(jù)的類型,我們認(rèn)為輸入應(yīng)為整數(shù),但用戶輸入什么都有可能。,2.3.2邊界值分析法的測(cè)試運(yùn)用,為此,我們可綜合考慮輸入數(shù)據(jù)的取值范圍和類型劃分等價(jià)類,其結(jié)果如下表所示。 加法器等價(jià)類,2.3

21、.2邊界值分析法的測(cè)試運(yùn)用,加法器邊界測(cè)試用例,2.3.2邊界值分析法的測(cè)試運(yùn)用,加法器邊界測(cè)試用例,2.3.2邊界值分析法的測(cè)試運(yùn)用,應(yīng)用邊界值分析法進(jìn)行測(cè)試用例設(shè)計(jì)時(shí),應(yīng)遵循以下一些原則:(1)如果輸入條件對(duì)取值范圍進(jìn)行了限定,則應(yīng)以邊界內(nèi)部以及剛超出范圍邊界外的值作為測(cè)試用例。(2)如果對(duì)取值的個(gè)數(shù)進(jìn)行了界定,則應(yīng)分別以最大、稍小于最大、稍大于最大、最小、稍小于最小、稍大于最小個(gè)數(shù)作為測(cè)試用例。(3)對(duì)于輸出條件,同樣可以應(yīng)

22、用上面提到的兩條原則來(lái)進(jìn)行測(cè)試用例設(shè)計(jì)。(4)如果程序規(guī)格說(shuō)明書(shū)中指明輸入或者輸出域是一個(gè)有序的集合,如順序文件、表格等,則應(yīng)注意選取有序集合中的第一個(gè)和最后一個(gè)元素作為測(cè)試用例。,2.4 因果圖法,等價(jià)類劃分法和邊界值分析方法都是著重考慮輸入條件,如果程序輸入之間沒(méi)有什么聯(lián)系,采用等價(jià)類劃分和邊界值分析是一種比較有效的方法。但如果輸入之間有關(guān)系,例如,約束關(guān)系、組合關(guān)系,這種關(guān)系用等價(jià)類劃分和邊界值分析是很難描述的,測(cè)試效果難以保障

23、,因此必須考慮使用一種適合于描述對(duì)于多種條件的組合,產(chǎn)生多個(gè)相應(yīng)動(dòng)作的測(cè)試方法,因果圖正是在此背景下提出的。,2.4 因果圖法,2.4.1 因果圖法的原理 1.因果圖,2.4.1 因果圖法的原理,,2.4.1 因果圖法的原理,2.因果圖法測(cè)試用例的設(shè)計(jì)步驟:(1)確定軟件規(guī)格中的原因和結(jié)果。分析規(guī)格說(shuō)明中哪些是原因(即輸入條件或輸入條件的等價(jià)類),哪些是結(jié)果(即輸出條件),并給每個(gè)原因和結(jié)果賦予一個(gè)標(biāo)識(shí)符。(2)確定原因和結(jié)果

24、之間的邏輯關(guān)系。分析軟件規(guī)格說(shuō)明中的語(yǔ)義,找出原因與結(jié)果之間、原因與原因之間對(duì)應(yīng)的關(guān)系,根據(jù)這些關(guān)系畫(huà)出因果圖。(3)確定因果圖中的各個(gè)約束。由于語(yǔ)法或環(huán)境的限制,有些原因與原因之間、原因與結(jié)果之間的組合情況不可能出現(xiàn)。為表明這些特殊情況,在因果圖上用一些記號(hào)表明約束或限制條件。(4)把因果圖轉(zhuǎn)換為決策表。(5)根據(jù)決策表設(shè)計(jì)測(cè)試用例。,2.4 因果圖法,2.4.2 因果圖法的測(cè)試運(yùn)用 某軟件規(guī)格說(shuō)明書(shū)規(guī)

25、定:輸入的第一個(gè)字符必須是#或*,第二個(gè)字符必須是一個(gè)數(shù)字,此情況下進(jìn)行文件的修改;如果第一個(gè)字符不是#或*,則給出信息N,如果第二個(gè)字符不是數(shù)字,則給出信息M。,2.5 決策表法,在所有的黑盒測(cè)試方法中,基于決策表的測(cè)試是最嚴(yán)格,最具有邏輯性的測(cè)試方法。,2.5 決策表法,2.5.1 決策表法 1.決策表 決策表是把作為條件的所有輸入的各種組合值以及對(duì)應(yīng)輸出值都羅列出來(lái)而形成的表格。 它能夠?qū)?fù)雜的

26、問(wèn)題按照各種可能的情況全部列舉出來(lái),簡(jiǎn)明并避免遺漏。因此,利用決策表能夠設(shè)計(jì)出完整的測(cè)試用例集合。,2.5.1 決策表法,決策表通常由條件樁、條件項(xiàng)、動(dòng)作樁和動(dòng)作項(xiàng)4部分組成。,,,決策表的組成 動(dòng)作項(xiàng)和條件項(xiàng)緊密相關(guān),指出在條件項(xiàng)的各組取值情況下應(yīng)采取的動(dòng)作。,2.5.1 決策表法,2.決策表的構(gòu)造及化簡(jiǎn)構(gòu)造決策表可采用以下5個(gè)步驟:(1)列出所有的條件樁和動(dòng)作樁。(2)確定規(guī)則的個(gè)數(shù)。(3)填入條件項(xiàng)。

27、(4)填入動(dòng)作項(xiàng),得到初始決策表。(5)簡(jiǎn)化決策表,合并相似規(guī)則。,2.5.1 決策表法,決策表的化簡(jiǎn) 對(duì)于n個(gè)條件的決策表,相應(yīng)有2n個(gè)規(guī)則(每個(gè)條件分別取真、假值),當(dāng)n較大時(shí),決策表很繁瑣。實(shí)際使用決策表時(shí),常常先將它簡(jiǎn)化。決策表的簡(jiǎn)化是以合并相似規(guī)則為目標(biāo)。即若表中有兩條以上規(guī)則具有相同的動(dòng)作,并且在條件項(xiàng)之間存在極為相似的關(guān)系,便可以合并。,2.5 決策表法,2.5.2 決策表法的測(cè)試運(yùn)用 下面以

28、NextDate函數(shù)為例,討論決策表測(cè)試用例的設(shè)計(jì)。 【例2.5】 NextDate函數(shù)輸入為month(月份)、day(日期)和year(年),輸出為輸入后一天的日期。例如,如果輸入為:1964年8月16日,則輸出為1964年8月17日。要求輸入變量month、day和year都是整數(shù)值,并且滿足以下條件: Con1. 1≤month≤12 Con2. 1≤day≤31 Con3. 1900≤year

29、≤2050,2.5.2 決策表法的測(cè)試運(yùn)用,采用決策表法則可以通過(guò)使用“不可能動(dòng)作”的概念表示條件的不可能組合,來(lái)強(qiáng)調(diào)這種依賴關(guān)系。 為了獲得下一個(gè)日期,NextDate函數(shù)需要執(zhí)行的操作只有如下5種:① day變量值加1;② day變量值復(fù)位為1;③ month變量值加1;④ month變量值復(fù)位為1;⑤ year變量值加1。,2.5.2 決策表法的測(cè)試運(yùn)用,如果將注意力集中到NextDate函數(shù)的日和月

30、問(wèn)題上,并仔細(xì)研究動(dòng)作樁??梢栽谝韵碌牡葍r(jià)類集合上建立決策表。M1: {mouth: mouth有30天};M2: {mouth:mouth有31天,12月除外}; M3: {mouth:mouth有12月}; M4: {mouth:mouth是2月};D1:{day:1≤day≤27};D2: {day:day=28};D3: {day:day=29}; D4: {day:day=30}; D5: {day:d

31、ay=31};Y1:{year:year是閏年};Y2: {year:year不是閏年},2.5.2 決策表法的測(cè)試運(yùn)用,NextDate函數(shù)的決策表,2.5.2 決策表法的測(cè)試運(yùn)用,NextDate函數(shù)的決策表,2.5.2 決策表法的測(cè)試運(yùn)用,可進(jìn)一步簡(jiǎn)化這22個(gè)測(cè)試用例。簡(jiǎn)化后的決策表如下所示。,2.5.2 決策表法的測(cè)試運(yùn)用,根據(jù)簡(jiǎn)化后的決策表,可設(shè)計(jì)測(cè)試用例如下表所示。,2.6 黑盒測(cè)試方法的比較與選擇,上面討論了幾種典型的

32、黑盒測(cè)試方法,這些測(cè)試方法的共同特點(diǎn)是,它們都把程序看作是一個(gè)打不開(kāi)的黑盒,只知道輸入到輸出的映射關(guān)系,根據(jù)軟件規(guī)格說(shuō)明設(shè)計(jì)測(cè)試用例。在等價(jià)類分析測(cè)試中,通過(guò)等價(jià)類劃分來(lái)減少測(cè)試用例的絕對(duì)數(shù)量。邊界值分析方法則通過(guò)分析輸入變量的邊界值域設(shè)計(jì)測(cè)試用例。在因果圖測(cè)試方法和決策表測(cè)試中,通過(guò)分析被測(cè)程序的邏輯依賴關(guān)系,構(gòu)造決策表,進(jìn)而設(shè)計(jì)測(cè)試用例。,2.6 黑盒測(cè)試方法的比較與選擇,1.測(cè)試工作量 以邊界值分析、等

33、價(jià)類劃分和決策表測(cè)試方法來(lái)討論它們的測(cè)試工作量,即生成測(cè)試用例的數(shù)量與開(kāi)發(fā)這些測(cè)試用例所需的工作量。,每種測(cè)試方法的測(cè)試用例數(shù)量,2.6 黑盒測(cè)試方法的比較與選擇,由每種方法設(shè)計(jì)測(cè)試用例的工作量曲線:,每種方法設(shè)計(jì)測(cè)試用例的工作量趨勢(shì),測(cè)試方法研究的目的就是在開(kāi)發(fā)測(cè)試用例工作量和測(cè)試執(zhí)行工作量之間做一個(gè)令人滿意的折中。,2.6 黑盒測(cè)試方法的比較與選擇,2.測(cè)試有效性 解釋測(cè)試有效性是很困難的。因?yàn)槲覀儾恢莱绦蛑械乃?/p>

34、故障,因此我們也不可能知道給定方法所產(chǎn)生的測(cè)試用例是否能夠發(fā)現(xiàn)這些。 所能夠做的,只是根據(jù)不同類型的故障,選擇最有可能發(fā)現(xiàn)這種缺陷的測(cè)試方法(包括白盒測(cè)試)。根據(jù)最可能出現(xiàn)的故障種類,分析得到可提高測(cè)試有效性的實(shí)用方法。通過(guò)跟蹤所開(kāi)發(fā)軟件中的故障的種類和密度,也可以改進(jìn)這種方法。,2.6 黑盒測(cè)試方法的比較與選擇,利用程序的已知屬性,選擇處理這種屬性的方法,在選擇黑盒測(cè)試方法時(shí)一些經(jīng)常用到的屬性有: 變量表示物理量還是

35、邏輯量? 在變量之間是否存在依賴關(guān)系? 是否有大量的例外處理?,2.6 黑盒測(cè)試方法的比較與選擇,下面給出一些黑盒測(cè)試方法選取的初步的“專家系統(tǒng)”: 如果變量引用的是物理量,可采用邊界值分析測(cè)試和等價(jià)類測(cè)試。 如果變量是獨(dú)立的,可采用邊界值分析測(cè)試和等價(jià)類測(cè)試。 如果變量不是獨(dú)立的,可采用決策表測(cè)試。 如果可保證是單缺陷假設(shè),可采用邊界值分析和健壯性測(cè)試。 如果可保證是多缺陷假設(shè),可采用邊界值分析測(cè)試和決策表測(cè)試 如果程

36、序包含大量例外處理,可采用健壯性測(cè)試和決策表測(cè)試。 如果變量引用的是邏輯量,可采用等價(jià)類測(cè)試用例和決策表測(cè)試。,2.7 黑盒測(cè)試工具介紹,黑盒測(cè)試工具是指測(cè)試軟件功能和性能的工具,主要用于集成測(cè)試、系統(tǒng)測(cè)試和驗(yàn)收測(cè)試。本節(jié)主要介紹幾款常用的功能測(cè)試工具,性能測(cè)試工具則在第6章中介紹。,2.7 黑盒測(cè)試工具介紹,2.7.1 黑盒測(cè)試工具概要 黑盒測(cè)試是在已知軟件產(chǎn)品應(yīng)具有的功能的條件下,在完全不考慮被測(cè)程序內(nèi)部結(jié)構(gòu)和

37、內(nèi)部特性的情況下,通過(guò)測(cè)試來(lái)檢測(cè)每個(gè)功能是否都按照需求規(guī)格說(shuō)明的規(guī)定正常使用。 黑盒測(cè)試工具又分為:功能測(cè)試工具和性能測(cè)試工具。① 功能測(cè)試工具:功能測(cè)試工具主要用于檢測(cè)被測(cè)程序能否達(dá)到預(yù)期的功能要求并能正常運(yùn)行。② 性能測(cè)試工具:性能測(cè)試工具主要用于確定軟件和系統(tǒng)性能。,2.7.1 黑盒測(cè)試工具概要,功能測(cè)試工具一般采用腳本錄制(Record)/回放(Playback)原理,模擬用戶的操作,然后將被測(cè)系統(tǒng)的輸出記

38、錄下來(lái),并同預(yù)先給定的標(biāo)準(zhǔn)結(jié)果進(jìn)行比較。在回歸測(cè)試中使用功能測(cè)試工具,可以大大減輕測(cè)試人員的工作量,提高測(cè)試效果。 功能測(cè)試工具不太適合于版本變動(dòng)較大的軟件。 下面主要介紹一些主流黑盒功能測(cè)試工具,如Mercury Interactive公司的WinRunner,IBM Rational公司的TeamTest和Robot,Compuware公司的QACenter等。,2.7 黑盒測(cè)試工具介紹,2.

39、7.2黑盒功能測(cè)試工具——WinRunner 1. WinRunner的測(cè)試模式 (1)上下文敏感模式(Context Sensitive model) (2)模擬模式(Analog mode) 2.GUI對(duì)象識(shí)別和GUI map文件 3.WinRunner測(cè)試過(guò)程 可分為創(chuàng)建GUI map,創(chuàng)建測(cè)試,調(diào)試測(cè)試,執(zhí)行測(cè)試,分析結(jié)果和

40、測(cè)試維護(hù)六個(gè)階段。,2.7.2黑盒功能測(cè)試工具——WinRunner,4.WinRunner的使用 WinRunner的主窗口如下所示,主要包括標(biāo)題欄、菜單欄、標(biāo)準(zhǔn)工具欄、用戶欄、狀態(tài)欄和測(cè)試窗口。,2.7.2黑盒功能測(cè)試工具——WinRunner,WinRunner的測(cè)試窗口界面如下,5.WinRunner對(duì)樣本軟件Flight1A的測(cè)試,2.7 黑盒測(cè)試工具介紹,2.7.3黑盒功能測(cè)試工具——QTPQTP屬于新一

41、代自動(dòng)化測(cè)試解決方案,能夠支持所有常用環(huán)境的功能測(cè)試。 QTP的主界面與WinRunner的主界面不同,界面中主要部分包括:文件工具欄、測(cè)試工具欄 、測(cè)試面、數(shù)據(jù)表格 、活動(dòng)屏幕。,QTP的主界面,2.7.3黑盒功能測(cè)試工具——QTP,2.7.3黑盒功能測(cè)試工具——QTP,QTP的測(cè)試流程1.設(shè)計(jì)測(cè)試用例2.創(chuàng)建測(cè)試腳本3.編輯測(cè)試腳本4.運(yùn)行測(cè)試5.分析測(cè)試 QTP適合測(cè)試版本比較穩(wěn)定的軟件產(chǎn)品,在一些界面變化不大的

42、回歸測(cè)試中非常有效,但對(duì)于界面變化頻率較大的軟件,則體現(xiàn)不出QTP的優(yōu)勢(shì)。,2.7 黑盒測(cè)試工具介紹,2.7.4 其他常用功能測(cè)試工具 1.IBM Rational公司的功能測(cè)試工具Robot Robot是一個(gè)面向?qū)ο蟮能浖y(cè)試工具,主要針對(duì)Web、ERP等進(jìn)行自動(dòng)功能測(cè)試。用Robot 可完成大多數(shù)軟件的功能和性能測(cè)試,它主要通過(guò)編寫(xiě)腳本的方式提供自動(dòng)化測(cè)試,可以開(kāi)發(fā)三種測(cè)試腳本:用于功能測(cè)試的GUI腳本

43、,用于性能測(cè)試的VU(虛擬用戶)以及VB(VBScript)腳本。 此外,Rational TeamTest 是一個(gè)針對(duì)整個(gè)功能測(cè)試流程(從編寫(xiě)和維護(hù)需求,到創(chuàng)建有效的測(cè)試腳本,直至缺陷跟蹤),提供全面解決方案的團(tuán)隊(duì)測(cè)試工具。,2.7.4 其他常用功能測(cè)試工具,2.Compuware公司的自動(dòng)黑盒測(cè)試工具QACenter QACcenter這個(gè)主要包括應(yīng)用測(cè)試產(chǎn)品的家族,能夠自動(dòng)地幫助管理測(cè)試過(guò)程

44、,快速分析和調(diào)試程序,能夠針對(duì)回歸測(cè)試,強(qiáng)度測(cè)試,單元測(cè)試,并發(fā)測(cè)試,集成測(cè)試,移植測(cè)試,容量和負(fù)載測(cè)試建立測(cè)試用例,自動(dòng)執(zhí)行測(cè)試并產(chǎn)生相應(yīng)的文檔。 QACenter主要包括:功能測(cè)試工具QARun,性能測(cè)試工具QALoad,可用性管理工具EcoTools和性能優(yōu)化工具EcoScope。,,習(xí)題21.分析黑盒測(cè)試方法的實(shí)質(zhì)及測(cè)試用例設(shè)計(jì)的要點(diǎn),掌握黑盒測(cè)試用例設(shè)計(jì)的主要思路。2.試用等價(jià)類分析方法,對(duì)實(shí)例程序進(jìn)行測(cè)

45、試。3.試用邊界值分析方法,對(duì)實(shí)例程序進(jìn)行測(cè)試。4.試用決策表方法,對(duì)實(shí)例程序進(jìn)行測(cè)試。5.啟動(dòng)Word程序并從File菜單中選擇Print命令,打開(kāi)打印對(duì)話框,左下角顯示的Print Range(打印區(qū)域)存在什么樣的邊界條件?6.對(duì)三角形問(wèn)題的一種常見(jiàn)補(bǔ)充是檢查直角三角形。如果滿足畢達(dá)哥拉斯(Pythagorean)關(guān)系(c2=a2+b2),則三條邊構(gòu)成直角三角形。試針對(duì)包含了直角三角形的擴(kuò)展三角形問(wèn)題來(lái)設(shè)計(jì)標(biāo)準(zhǔn)等價(jià)類測(cè)試用

46、例。,,7.試為三角形問(wèn)題中的直角三角形開(kāi)發(fā)一個(gè)決策表和相應(yīng)的測(cè)試用例。注意,會(huì)有等腰直角三角形。8.學(xué)習(xí)安裝WinRunner或QTP,并通過(guò)操作實(shí)踐其自帶的“機(jī)票預(yù)定系統(tǒng)”,掌握該軟件測(cè)試工具的基本使用方法和主要功能。9.試編輯一個(gè)測(cè)試腳本,并進(jìn)行測(cè)試實(shí)踐。10.用WinRunner或QTP來(lái)測(cè)試一個(gè)網(wǎng)上購(gòu)物系統(tǒng),要求:錄制整個(gè)購(gòu)物流程;練習(xí)插入各種檢查點(diǎn)11.運(yùn)用WinRunner或QTP,對(duì)本校校園網(wǎng)站進(jìn)行測(cè)試并分析

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫(kù)僅提供信息存儲(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)論