軟件測(cè)試黑盒測(cè)試_第1頁(yè)
軟件測(cè)試黑盒測(cè)試_第2頁(yè)
軟件測(cè)試黑盒測(cè)試_第3頁(yè)
軟件測(cè)試黑盒測(cè)試_第4頁(yè)
軟件測(cè)試黑盒測(cè)試_第5頁(yè)
已閱讀5頁(yè),還剩14頁(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、第4章 黑盒測(cè)試本章要點(diǎn) 黑盒測(cè)試又叫功能測(cè)試,它主要關(guān)注被測(cè)軟件功能的實(shí)現(xiàn),而不是其內(nèi)部邏輯。在黑盒測(cè)試中,被測(cè)對(duì)象的內(nèi)部結(jié)構(gòu)、運(yùn)作情況對(duì)測(cè)試人員是不可見(jiàn)的,測(cè)試人員把被測(cè)試的軟件系統(tǒng)看成是一個(gè)黑盒子,并不需要關(guān)心盒子的內(nèi)部結(jié)構(gòu)和內(nèi)部特性,而只關(guān)注于軟件產(chǎn)品的輸入數(shù)據(jù)和輸出結(jié)果,從而檢查軟件產(chǎn)品是否符合它的功能說(shuō)明。 黑盒測(cè)試有多種方法,比如場(chǎng)景法、等價(jià)類劃分、邊界值分析、因果圖法、決策表法等。4.1 等價(jià)類劃分法 等價(jià)類劃分法把程序的輸入域劃分為若干部分,然后從每個(gè)部分中選取少數(shù)代表性數(shù)據(jù)當(dāng)作測(cè)試用例。每一類的代表性數(shù)據(jù)在測(cè)試中的作用等價(jià)于這一類中的其他值。 在劃分等價(jià)類時(shí),有一些規(guī)則應(yīng)該

2、遵循。 如果輸入條件規(guī)定了取值范圍或個(gè)數(shù),則可確定一個(gè)有效等價(jià)類和兩個(gè)無(wú)效等價(jià)類。 如果輸入條件規(guī)定了輸入值的集合或是規(guī)定了“必須如何”的條件,則可確定一個(gè)有效等價(jià)類和一個(gè)無(wú)效等價(jià)類。 如果輸入是布爾表達(dá)式,可以分為一個(gè)有效等價(jià)類和一個(gè)無(wú)效等價(jià)類。 如果輸入條件是一組值,且程序?qū)Σ煌闹涤胁煌奶幚矸绞剑瑒t每個(gè)允許的輸入值對(duì)應(yīng)一個(gè)有效等價(jià)類,所有不允許的輸入值的集合為一個(gè)無(wú)效等價(jià)類。 如果規(guī)定了輸入數(shù)據(jù)必須遵循的規(guī)則,可以劃分出一個(gè)有效的等價(jià)類(符合規(guī)則)和若干個(gè)無(wú)效的等價(jià)類(從不同的角度違反規(guī)則)。 劃分好等價(jià)類后,就可以設(shè)計(jì)測(cè)試用例了。設(shè)計(jì)測(cè)試用例的步驟可以歸結(jié)為3步: 對(duì)每個(gè)輸入和外部條

3、件進(jìn)行等價(jià)類劃分,畫(huà)出等價(jià)類表,并為每個(gè)等價(jià)類進(jìn)行編號(hào)。 設(shè)計(jì)一個(gè)測(cè)試用例,使其盡可能多地覆蓋有效等價(jià)類,重復(fù)這一步,直到所有的有效等價(jià)類被覆蓋。 為每一個(gè)無(wú)效等價(jià)類設(shè)計(jì)一個(gè)測(cè)試用例。 在“C0編譯器”案例中,從用戶得到的輸入條件有兩個(gè):源代碼文件名和保存目標(biāo)代碼文件名,而程序本身將讀取源代碼;輸出信息有三種可能: 全部輸入正確且源代碼正確,輸出編譯結(jié)果和運(yùn)行結(jié)果,保存目標(biāo)代碼; 全部輸入正確且源代碼不正確,輸出編譯結(jié)果和錯(cuò)誤信息; 輸入存在錯(cuò)誤,輸出相應(yīng)錯(cuò)誤信息。 但是,這樣進(jìn)行等價(jià)類劃分的測(cè)試只是測(cè)試了一些編譯器的基本功能,并不能確定該編譯器能夠?qū)0語(yǔ)言進(jìn)行正確的編譯和執(zhí)行。這需要針對(duì)C

4、0語(yǔ)言定義,對(duì)“源代碼”進(jìn)行更細(xì)致的等價(jià)類劃分。4.2 邊界值分析法 邊界值分析法是一種補(bǔ)充等價(jià)類劃分法的黑盒測(cè)試方法,它不是選擇等價(jià)類中的任意元素,而是選擇等價(jià)類邊界的測(cè)試用例。實(shí)踐證明,這些測(cè)試用例往往能取得很好的測(cè)試效果。邊界值分析法不僅重視輸入范圍邊界,也從輸出范圍中導(dǎo)出測(cè)試用例。 通常情況下軟件測(cè)試所包含的邊界條件有以下幾種類型:數(shù)字、字符、位置、質(zhì)量、大小、速度、方位、尺寸、空間等;對(duì)應(yīng)的邊界值應(yīng)該在:最大/最小、首位/末位、上/下、最快/最慢、最高/最低、最短/最長(zhǎng)、空/滿等情況。 用邊界值分析法設(shè)計(jì)測(cè)試用例時(shí)應(yīng)當(dāng)遵守幾條原則: 如果輸入條件規(guī)定了取值范圍,應(yīng)以該范圍的邊界內(nèi)及剛

5、剛超范圍的邊界外的值作為測(cè)試用例。如以a和b作為輸入條件,測(cè)試用例應(yīng)當(dāng)包括a和b,以及略大于a和略小于b的值; 若規(guī)定了值的個(gè)數(shù),應(yīng)分別以最大、最小個(gè)數(shù)和稍小于最小和稍大于最大個(gè)數(shù)作為測(cè)試用例; 針對(duì)每個(gè)輸出條件,也使用上面的兩條原則; 如果程序規(guī)格說(shuō)明書(shū)中提到的輸入或輸出范圍是有序的集合,如順序文件、表格等,應(yīng)注意選取有序集的第一個(gè)和最后一個(gè)元素作為測(cè)試用例; 分析規(guī)格說(shuō)明,找出其他的可能邊界條件。 在“C0編譯器”案例中,有很多和個(gè)數(shù)有關(guān)的約定,應(yīng)該用邊界值法結(jié)合等價(jià)類劃分法進(jìn)行測(cè)試。4.3 因果圖法 因果圖法是一種黑盒測(cè)試方法,它從自然語(yǔ)言書(shū)寫(xiě)的程序規(guī)格說(shuō)明書(shū)中尋找因果關(guān)系,即輸入條件與

6、輸出和程序狀態(tài)的改變,通過(guò)因果圖產(chǎn)生判定表。它能夠幫助人們按照一定的步驟高效的選擇測(cè)試用例,同時(shí)還能指出程序規(guī)格說(shuō)明書(shū)中存在的問(wèn)題。 因果圖法設(shè)計(jì)測(cè)試用例的步驟如下: 分析程序規(guī)格說(shuō)明書(shū)的描述中,哪些是原因,哪些是結(jié)果,原因常常是輸入條件或輸入條件的等價(jià)類,而結(jié)果常常是輸出條件; 分析程序規(guī)格說(shuō)明書(shū)中描述的語(yǔ)義內(nèi)容,并將其表示成連接各個(gè)原因與各個(gè)結(jié)果的因果圖; 由于語(yǔ)法或環(huán)境的限制,有些原因和結(jié)果的組合情況是不可能出現(xiàn)的,為表明這些特定的情況,在因果圖上使用若干特殊的符號(hào)標(biāo)明約束條件; 把因果圖轉(zhuǎn)化為決策表; 為決策表中每一列表示的情況設(shè)計(jì)測(cè)試用例。 在“C0編譯器”案例中,編譯時(shí)如果發(fā)現(xiàn)源代

7、碼的語(yǔ)法或語(yǔ)義錯(cuò)誤,會(huì)在輸出中輸出相應(yīng)的錯(cuò)誤信息,但是語(yǔ)法錯(cuò)誤或語(yǔ)義錯(cuò)誤與錯(cuò)誤信息并不是一一對(duì)應(yīng)的。被定義的錯(cuò)誤描述已在第3章列出,共有27種,而導(dǎo)致這些報(bào)錯(cuò)的原因卻遠(yuǎn)遠(yuǎn)多于這個(gè)數(shù)量。比如,返回語(yǔ)句return中缺少括號(hào),與子函數(shù)定義參數(shù)部分缺少括號(hào),是兩個(gè)不同原因,但是都會(huì)產(chǎn)生14號(hào)或16號(hào)關(guān)于缺少括號(hào)的錯(cuò)誤信息輸出。這時(shí)可以建立因果圖進(jìn)行分析。4.4 決策表法 在一些數(shù)據(jù)處理問(wèn)題中,某些操作是否實(shí)施依賴于多個(gè)邏輯條件的取值。在這些邏輯條件取值的組合所構(gòu)成的多種情況下,分別執(zhí)行不同的操作。處理這類問(wèn)題的一個(gè)非常有力的工具就是決策表。 決策表是分析和表達(dá)多邏輯條件下執(zhí)行不同操作的情況的工具,可

8、以把復(fù)雜邏輯關(guān)系和多種條件組合的情況表達(dá)的比較明確。決策表通常由四部分組成, 決策表的建立應(yīng)當(dāng)根據(jù)軟件規(guī)格說(shuō)明書(shū),分為以下幾個(gè)步驟: 確定規(guī)則個(gè)數(shù); 列出所有條件樁和動(dòng)作樁; 填入條件項(xiàng); 填入動(dòng)作項(xiàng),制定初始決策表; 簡(jiǎn)化,合并相似規(guī)則或者相同動(dòng)作。 在簡(jiǎn)化并得到最終決策表后,只要選擇適當(dāng)?shù)妮斎?,使決策表每一列的輸入條件得到滿足即可生成測(cè)試用例。 將上一節(jié)得到的“C0編譯器”錯(cuò)誤來(lái)源與錯(cuò)誤信息不一一對(duì)應(yīng)得到的因果圖轉(zhuǎn)換為決策表.4.5 場(chǎng)景法 用例場(chǎng)景是通過(guò)描述流經(jīng)用例的路徑來(lái)確定的過(guò)程,這個(gè)流經(jīng)過(guò)程要從用例開(kāi)始到結(jié)束遍歷其中所有的基本流和備選流。 基本流:采用黑直線表示,是經(jīng)過(guò)用例的最簡(jiǎn)單

9、路徑,表示無(wú)任何差錯(cuò),程序從開(kāi)始執(zhí)行到結(jié)束; 備選流:采用不同顏色表示,一個(gè)備選流可以從基本流開(kāi)始,在某個(gè)特定條件下執(zhí)行,然后重新加入基本流中,也可以起源于另一個(gè)備選流,或終止用例,不再加入到基本流中。 應(yīng)用場(chǎng)景法進(jìn)行黑盒測(cè)試的步驟如下: 根據(jù)規(guī)格說(shuō)明,描述出程序的基本流和各個(gè)備選流; 根據(jù)基本流和各個(gè)備選流生成不同的場(chǎng)景; 對(duì)每一個(gè)場(chǎng)景生成相應(yīng)的測(cè)試用例; 對(duì)生成的所有測(cè)試用例進(jìn)行復(fù)審,去掉多余的測(cè)試用例,對(duì)每一個(gè)測(cè)試用例確定測(cè)試數(shù)據(jù)。 用場(chǎng)景法對(duì)“C0編譯器”進(jìn)行黑盒測(cè)試,重新考慮編譯器的運(yùn)行場(chǎng)景,其基本流為源代碼文件名輸入正確,保存目標(biāo)代碼文件名輸入正確,源代碼正確,輸出編譯信息和運(yùn)行結(jié)

10、果并生成目標(biāo)代碼,程序退出。其中源代碼文件名、保存目標(biāo)文件名、源代碼都可能出現(xiàn)錯(cuò)誤,共有三支備選流。4.6 黑盒測(cè)試方法選擇 黑盒測(cè)試的每種測(cè)試方法都有各自的優(yōu)缺點(diǎn),需要測(cè)試人員根據(jù)實(shí)際項(xiàng)目特點(diǎn)和需要選擇合適的方法設(shè)計(jì)測(cè)試用例。以下是選擇方法的幾條經(jīng)驗(yàn): 在任何情況下都必須選擇邊界值分析方法。經(jīng)驗(yàn)表明用這種方法設(shè)計(jì)出的測(cè)試用例發(fā)現(xiàn)程序錯(cuò)誤的能力最強(qiáng); 必要時(shí)用等價(jià)類劃分法補(bǔ)充一些測(cè)試用例; 用錯(cuò)誤推測(cè)法再追加一些測(cè)試用例; 如果程序的功能說(shuō)明中含有輸入條件的組合情況,則可選用因果圖法和決策表法。 選擇合適的測(cè)試方法能夠極大的提高黑盒測(cè)試的效率和效果。除了上述的幾條經(jīng)驗(yàn),還需要測(cè)試人員積累實(shí)際的測(cè)試經(jīng)驗(yàn),做出合適的選擇。本章習(xí)題什么是黑盒測(cè)試,有哪些主要方法?等價(jià)類劃分的原則是什么?邊界值選定的原則是什么?因果圖包括幾個(gè)部分,分別是什么?如何用場(chǎng)景法進(jìn)行黑盒測(cè)試,如何選定場(chǎng)景?利用等價(jià)類劃分技術(shù)為下面的NextDate問(wèn)題設(shè)計(jì)測(cè)試用例: 輸入三個(gè)變量(年、月、日),

溫馨提示

  • 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ù)網(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)論