第3章 黑盒測(cè)試及其實(shí)例設(shè)計(jì)課件_第1頁(yè)
第3章 黑盒測(cè)試及其實(shí)例設(shè)計(jì)課件_第2頁(yè)
第3章 黑盒測(cè)試及其實(shí)例設(shè)計(jì)課件_第3頁(yè)
第3章 黑盒測(cè)試及其實(shí)例設(shè)計(jì)課件_第4頁(yè)
第3章 黑盒測(cè)試及其實(shí)例設(shè)計(jì)課件_第5頁(yè)
已閱讀5頁(yè),還剩43頁(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)介

第3章黑盒測(cè)試及其實(shí)例設(shè)計(jì)

本章概述黑盒測(cè)試是軟件測(cè)試技術(shù)中最基本的方法之一,在各類測(cè)試中都有廣泛的應(yīng)用。本章將介紹黑盒測(cè)試的基本概念與基本方法,并重點(diǎn)介紹應(yīng)用較為廣泛的幾種測(cè)試方法:等價(jià)類劃分法、邊界值分析法、決策表法和因果圖法,并通過(guò)典型實(shí)例詳細(xì)介紹實(shí)際測(cè)試技術(shù)的基本運(yùn)用。第3章黑盒測(cè)試及其實(shí)例設(shè)計(jì)

3.1黑盒測(cè)試概述3.2等價(jià)類劃分法3.3邊界值分析法

3.4決策表法 3.5因果圖法

3.6實(shí)例設(shè)計(jì) 3.7測(cè)試方法的選擇

小結(jié)習(xí)題

3.1黑盒測(cè)試概述

黑盒測(cè)試又稱為功能測(cè)試或數(shù)據(jù)驅(qū)動(dòng)測(cè)試,是從用戶觀點(diǎn)出發(fā),主要以軟件規(guī)格說(shuō)明書為依據(jù),對(duì)程序功能和程序接口進(jìn)行的測(cè)試。黑盒測(cè)試是以用戶的觀點(diǎn),從輸入數(shù)據(jù)與輸出數(shù)據(jù)的對(duì)應(yīng)關(guān)系出發(fā)進(jìn)行測(cè)試的,它不涉及到程序的內(nèi)部結(jié)構(gòu)。很明顯,如果外部特性本身有問(wèn)題或規(guī)格說(shuō)明書的規(guī)定有誤,用黑盒測(cè)試方法是發(fā)現(xiàn)不了的。黑盒測(cè)試方法著重測(cè)試軟件的功能需求,是在程序接口上進(jìn)行測(cè)試,主要是為了發(fā)現(xiàn)以下錯(cuò)誤:是否有不正確的功能,是否有遺漏的功能;在接口上,是否能夠正確地接收輸入數(shù)據(jù)并產(chǎn)生正確的輸出結(jié)果;是否有數(shù)據(jù)結(jié)構(gòu)錯(cuò)誤或外部信息訪問(wèn)錯(cuò)誤;性能上是否能夠滿足要求;是否有程序初始化和終止方面的錯(cuò)誤。黑盒測(cè)試的各種方法中,應(yīng)用較為廣泛的測(cè)試方法有以下幾種:等價(jià)類劃分法、邊界值分析法、決策表法和因果圖法。這些方法是比較實(shí)用的,但采用什么方法,在使用時(shí)自然要針對(duì)開發(fā)項(xiàng)目的特點(diǎn)對(duì)設(shè)計(jì)方法進(jìn)行適當(dāng)?shù)倪x擇。3.2等價(jià)類劃分法3.2.1等價(jià)類劃分法等價(jià)類劃分法是黑盒測(cè)試用例設(shè)計(jì)中一種常用的設(shè)計(jì)方法,它將不能窮舉的測(cè)試過(guò)程進(jìn)行合理分類,從而保證設(shè)計(jì)出來(lái)的測(cè)試用例具有完整性和代表性。在劃分等價(jià)類的過(guò)程中,不但要考慮有效等價(jià)類劃分,同時(shí)也要考慮無(wú)效等價(jià)類劃分:有效等價(jià)類是指對(duì)軟件規(guī)格說(shuō)明來(lái)說(shuō),合理、有意義的輸入數(shù)據(jù)所構(gòu)成的集合。無(wú)效等價(jià)類則和有效等價(jià)類相反,即不滿足程序輸入要求或者無(wú)效的輸入數(shù)據(jù)所構(gòu)成的集合。劃分等價(jià)類的幾個(gè)原則:如果規(guī)定了輸入條件的取值范圍或者個(gè)數(shù),則可以確定一個(gè)有效等價(jià)類和兩個(gè)無(wú)效等價(jià)類。如果規(guī)定了輸入值的集合,則可以確定一個(gè)有效等價(jià)類和一個(gè)無(wú)效等價(jià)類。如果規(guī)定了輸入數(shù)據(jù)的一組值,并且程序要對(duì)每一個(gè)輸入值分別進(jìn)行處理,則可為每一個(gè)值確定一個(gè)有效等價(jià)類,此外根據(jù)這組值確定一個(gè)無(wú)效等價(jià)類,即所有不允許的輸入值的集合。如果規(guī)定了輸入數(shù)據(jù)必須遵守的規(guī)則,則可以確定一個(gè)有效等價(jià)類和若干個(gè)無(wú)效等價(jià)類。如果已知的等價(jià)類中各個(gè)元素在程序中的處理方式不同,則應(yīng)將該等價(jià)類進(jìn)一步劃分成更小的等價(jià)類。輸入條件有效等價(jià)類無(wú)效等價(jià)類………………表3-1等價(jià)類表在確立了等價(jià)類之后,建立等價(jià)類表,列出所有劃分出的等價(jià)類,如表3-1所示3.2.2常見等價(jià)類劃分形式1.標(biāo)準(zhǔn)等價(jià)類測(cè)試標(biāo)準(zhǔn)等價(jià)類測(cè)試不考慮無(wú)效數(shù)據(jù)值,測(cè)試用例使用每個(gè)等價(jià)類中的一個(gè)值。通常,標(biāo)準(zhǔn)等價(jià)類測(cè)試用例的數(shù)量和最大等價(jià)類中元素的數(shù)目相等。以三角形問(wèn)題為例,要求輸入三個(gè)整數(shù)a、b、c,分別作為三角形的三條邊,取值范圍在1~100之間,判斷由三條邊構(gòu)成的三角形類型為等邊三角形、等腰三角形、一般三角形以及不構(gòu)成三角形。在多數(shù)情況下,是從輸入域劃分等價(jià)類,但對(duì)于三角形問(wèn)題,從輸出域來(lái)定義等價(jià)類是最簡(jiǎn)單的劃分方法。因此,利用這些信息可以確定下列值域等價(jià)類:R1={〈a,b,c〉:邊為a,b,c的等邊三角形}R2={〈a,b,c〉:邊為a,b,c的等腰三角形}R3={〈a,b,c〉:邊為a,b,c的一般三角形}R4={〈a,b,c〉:邊為a,b,c不能構(gòu)成三角形}4個(gè)標(biāo)準(zhǔn)等價(jià)類測(cè)試用例如表3-2所示。測(cè)試用例abc預(yù)期輸出TC1202020等邊三角形TC2202010等腰三角形TC35810一般三角形TC43610不構(gòu)成三角形表3-2三角形問(wèn)題的標(biāo)準(zhǔn)等價(jià)類測(cè)試用例2.健壯等價(jià)類測(cè)試健壯等價(jià)類測(cè)試主要的出發(fā)點(diǎn)是考慮了無(wú)效等價(jià)類。對(duì)有效輸入,測(cè)試用例從每個(gè)有效等價(jià)類中取一個(gè)值;對(duì)無(wú)效輸入,一個(gè)測(cè)試用例有一個(gè)無(wú)效值,其他值均取有效值。健壯等價(jià)類測(cè)試存在兩個(gè)問(wèn)題:需要花費(fèi)精力定義無(wú)效測(cè)試用例的期望輸出;對(duì)強(qiáng)類型的語(yǔ)言沒有必要考慮無(wú)效的輸入

。對(duì)于上述三角形問(wèn)題,取a、b、c的無(wú)效值產(chǎn)生了7個(gè)健壯等價(jià)類測(cè)試用例,如表3-3所示。測(cè)試用例abc預(yù)期輸出TC1345一般三角形TC2-144a值超出定義域范圍TC34-14b值超出定義域范圍TC444-1c值超出定義域范圍TC510144a值超出定義域范圍TC641014b值超出定義域范圍TC744101c值超出定義域范圍表3-3三角形問(wèn)題的健壯等價(jià)類測(cè)試用例3.對(duì)等區(qū)間劃分對(duì)等區(qū)間劃分是測(cè)試用例設(shè)計(jì)的非常規(guī)形式化的方法。它將被測(cè)對(duì)象的輸入/輸出劃分成一些區(qū)間,被測(cè)軟件對(duì)一個(gè)特定區(qū)間的任何值都是等價(jià)的。形成測(cè)試區(qū)間的數(shù)據(jù)不只是函數(shù)/過(guò)程的參數(shù),也可以是程序可以訪問(wèn)的全局變量、系統(tǒng)資源等,這些變量或資源可以是以時(shí)間形式存在的數(shù)據(jù),或以狀態(tài)形式存在的輸入/輸出序列。

舉例說(shuō)明如下:平方根函數(shù)要求當(dāng)輸入值為0或大于0時(shí),返回輸入數(shù)的平方根;當(dāng)輸入值小于0時(shí),顯示錯(cuò)誤信息“平方根錯(cuò)誤,輸入值小于0”,并返回0??紤]平方根函數(shù)的測(cè)試用例區(qū)間,可以劃分出兩個(gè)輸入?yún)^(qū)間和兩個(gè)輸出區(qū)間,如表3-4所示。輸入?yún)^(qū)間輸出區(qū)間ⅰ<0A>=0ⅱ>=0BError表3-4區(qū)間劃分通過(guò)分析,可以用2個(gè)測(cè)試用例來(lái)測(cè)試4個(gè)區(qū)間:測(cè)試用例1:輸入4,返回2//區(qū)間ⅱ和a測(cè)試用例2:輸入-10,返回0,輸出“平方根錯(cuò)誤,輸入值小于0”//區(qū)間ⅰ和b3.2.3等價(jià)類劃分法測(cè)試用例在某網(wǎng)站申請(qǐng)免費(fèi)信箱時(shí),要求用戶必須輸入用戶名、密碼及確認(rèn)密碼,對(duì)每一項(xiàng)輸入條件的要求如下:用戶名要求為4位以上,16位以下,使用英文字母、數(shù)字、“-”、“_”,并且首字符必須為字母或數(shù)字;密碼要求為6~16位之間,只能使用英文字母、數(shù)字以及“-”、“_”,并且區(qū)分大小寫。分析如下:分析程序的規(guī)格說(shuō)明,列出等價(jià)類表(包括有效等價(jià)類和無(wú)效等價(jià)類),如表3-5所示。輸入條件有效等價(jià)類編號(hào)無(wú)效等價(jià)類編號(hào)用戶名4~16位1少于4位8多于16位9首字符為字母2首字符為除字母、數(shù)字之外的其他字符10首字符為數(shù)字3英文字母、數(shù)字、“-”、“_”組合4組合中含有除英文字母、數(shù)字、“-”、“_”之外的其他特殊字符11密碼6~16位5少于6位12多于16位13英文字母、數(shù)字、“-”、“_”組合6組合中含有除英文字母、數(shù)字、“-”、“_”之外的其他特殊字符14確認(rèn)密碼內(nèi)容同密碼相同7內(nèi)容同密碼相同,但字母大小寫不同15表3-5等價(jià)類表根據(jù)上述等價(jià)類表,設(shè)計(jì)測(cè)試用例如表3-6所示。測(cè)試用例用戶名密碼確認(rèn)密碼預(yù)期輸出TC1abc_2000abc_123abc_123注冊(cè)成功TC22000-abc123-abc123-abc注冊(cè)成功TC3abc1234567812345678提示用戶名錯(cuò)誤TC4abcdefghijk1234561234567812345678提示用戶名錯(cuò)誤TC5_abc1231234567812345678提示用戶名錯(cuò)誤TC6abc&1231234567812345678提示用戶名錯(cuò)誤TC7abc_1231234512345提示密碼錯(cuò)誤TC8abc_123abcdefghijk123456abcdefghijk123456提示密碼錯(cuò)誤TC9abc_123abc&123abc&123提示密碼錯(cuò)誤TC10abc_123abc_123Abc_123提示密碼錯(cuò)誤表3-6測(cè)試用例3.3邊界值分析法3.3.1邊界值分析法邊界值分析法(BoundaryValueAnalysis,BVA)是一種補(bǔ)充等價(jià)類劃分法的測(cè)試用例設(shè)計(jì)技術(shù),它不是選擇等價(jià)類的任意元素,而是選擇等價(jià)類邊界的測(cè)試用例。在測(cè)試過(guò)程中,可能會(huì)忽略邊界值的條件,大量的錯(cuò)誤是發(fā)生在輸入或輸出范圍的邊界上,而不是發(fā)生在輸入輸出范圍的內(nèi)部。因此針對(duì)各種邊界情況設(shè)計(jì)測(cè)試用例,可以查出更多的錯(cuò)誤。在應(yīng)用邊界值分析法設(shè)計(jì)測(cè)試用例時(shí),應(yīng)遵循以下幾條原則:如果輸入條件規(guī)定了值的范圍,則應(yīng)該選取剛達(dá)到這個(gè)范圍的邊界值,以及剛剛超過(guò)這個(gè)范圍邊界的值作為測(cè)試輸入數(shù)據(jù)。如果輸入條件規(guī)定了值的個(gè)數(shù),則用最大個(gè)數(shù)、最小個(gè)數(shù)、比最小個(gè)數(shù)少1、比最大個(gè)數(shù)多1的數(shù)作為測(cè)試數(shù)據(jù)。根據(jù)規(guī)格說(shuō)明的每一個(gè)輸出條件,分別使用以上兩個(gè)原則。如果程序的規(guī)格說(shuō)明給出的輸入域或者輸出域是有序集合(如有序表、順序文件等),則應(yīng)選取集合的第一個(gè)元素和最后一個(gè)元素作為測(cè)試用例。如果程序中使用了一個(gè)內(nèi)部數(shù)據(jù)結(jié)構(gòu),則應(yīng)當(dāng)選擇這個(gè)內(nèi)部數(shù)據(jù)結(jié)構(gòu)的邊界值作為測(cè)試用例。分析規(guī)格說(shuō)明,找出其他可能的邊界條件。3.3.2邊界條件與次邊界條件邊界值分析法是對(duì)輸入的邊界值進(jìn)行測(cè)試。在測(cè)試用例設(shè)計(jì)中,需要對(duì)輸入的條件進(jìn)行分析并且找出其中的邊界值條件,通過(guò)對(duì)這些邊界值的測(cè)試來(lái)查出更多的錯(cuò)誤。提出邊界條件時(shí),一定要測(cè)試臨近邊界的有效數(shù)據(jù),測(cè)試最后一個(gè)可能有效的數(shù)據(jù),同時(shí)測(cè)試剛超過(guò)邊界的無(wú)效數(shù)據(jù)。通常情況下,軟件測(cè)試所包含的邊界檢驗(yàn)有幾種類型:數(shù)值、字符、位置、數(shù)量、速度、尺寸等,在設(shè)計(jì)測(cè)試用例時(shí)要考慮這些類型的特征:第一個(gè)/最后一個(gè)、開始/完成、空/滿、最大值/最小值、最快/最慢、最高/最低、最長(zhǎng)/最短等。這些不是確定的列表,而是一些可能出現(xiàn)的邊界條件。舉個(gè)例子來(lái)說(shuō)明一下,如表3-7所示。項(xiàng)邊界值測(cè)試用例的設(shè)計(jì)思路字符起始-1個(gè)字符/結(jié)束+1個(gè)字符假設(shè)一個(gè)文本輸入?yún)^(qū)域要求允許輸入1到255個(gè)字符,輸入1個(gè)和255個(gè)字符作為有效等價(jià)類;輸入0個(gè)和256個(gè)字符作為無(wú)效等價(jià)類,這幾個(gè)數(shù)值都屬于邊界條件值數(shù)值開始位-1/結(jié)束位+1假設(shè)軟件要求輸入的數(shù)據(jù)為5位數(shù)值,則可以使用00000作為最小值和99999作為最大值,然后使用剛好小于5位和大于5位的數(shù)值來(lái)作為邊界條件方向剛剛超過(guò)/剛剛低于空間小于空余空間一點(diǎn)/大于滿空間一點(diǎn)假如要做磁盤的數(shù)據(jù)存儲(chǔ),使用比最小剩余磁盤空間大一點(diǎn)(幾KB)的文件作為最大值的檢驗(yàn)邊界條件表3-7利用邊界值作為測(cè)試數(shù)據(jù)的例子項(xiàng)范圍或值位(bit)0或1字節(jié)(byte)0~255字(word)0~65、535(單字)或0~4、294、967、295(雙字)千(K)1024兆(M)1048576吉(G)1073741824太(T)1099511627776表3-8計(jì)算機(jī)數(shù)值運(yùn)算的范圍數(shù)值的邊界值檢驗(yàn)計(jì)算機(jī)是基于二進(jìn)制進(jìn)行工作的,因此,任何數(shù)值運(yùn)算都有一定的范圍限制,如表3-8所示。字符ASCII碼值字符ASCII碼值空(null)0A65空格(space)32a97斜杠(/)47左中括號(hào)([)91048Z122冒號(hào)(:)58Z90@64單引號(hào)(‘)96表3-9字符的ASCII碼對(duì)應(yīng)表字符的邊界值檢驗(yàn)在字符的編碼方式中,ASCII和Unicode是比較常見的編碼方式,表3-9中列出了一些簡(jiǎn)單的ASCII碼對(duì)應(yīng)表。其他邊界值檢驗(yàn)包括默認(rèn)值/空值/空格/未輸入值/零、無(wú)效數(shù)據(jù)/不正確數(shù)據(jù)和干擾數(shù)據(jù)等。

在實(shí)際的測(cè)試用例設(shè)計(jì)中,需要將基本的軟件設(shè)計(jì)要求和程序定義的要求結(jié)合起來(lái),即結(jié)合基本邊界值條件和子邊界值條件來(lái)設(shè)計(jì)有效的測(cè)試用例。3.3.3邊界值分析法測(cè)試用例某程序要求輸入三個(gè)整數(shù)x、y、z,分別作為長(zhǎng)方體的長(zhǎng)、寬、高,x、y、z的取值范圍在2~20之間,計(jì)算長(zhǎng)方體的體積。表3-10給出了健壯性邊界值分析測(cè)試用例。測(cè)試用例xyz預(yù)期輸出TC111010x值超出范圍TC221010200TC331010300TC41010101000TC51910101900TC62010102000TC7211010x值超出范圍TC810110y值超出范圍TC910210200TC1010310300TC111019101900TC121020102000TC13102110y值超出范圍TC1410101z值超出范圍TC1510102200TC1610103300TC171010191900TC181010202000TC19101021z值超出范圍表3-10健壯性邊界值分析測(cè)試用例3.4決策表法

3.4.1決策表法決策表通常由四個(gè)部分組成,如圖3-1所示。條件樁:列出了問(wèn)題的所有條件,通常認(rèn)為列出的條件的先后次序無(wú)關(guān)緊要。動(dòng)作樁:列出了問(wèn)題規(guī)定的可能采取的操作,這些操作的排列順序沒有約束。條件項(xiàng):針對(duì)條件樁給出的條件列出所有可能的取值。動(dòng)作項(xiàng):與條件項(xiàng)緊密相關(guān),列出在條件項(xiàng)的各組取值情況下應(yīng)該采取的動(dòng)作。圖3-1決策表的組成規(guī)則選項(xiàng)1234條件:C1:銷售好?C2:庫(kù)存低?TTTFFTFF動(dòng)作:a1:增加生產(chǎn)a2:繼續(xù)生產(chǎn)a3:停止生產(chǎn)√√√√表3-11決策表以下列問(wèn)題為例給出構(gòu)造決策表的具體過(guò)程。如果某產(chǎn)品銷售好并且?guī)齑娴?,則增加該產(chǎn)品的生產(chǎn);如果該產(chǎn)品銷售好,但庫(kù)存量不低,則繼續(xù)生產(chǎn);若該產(chǎn)品銷售不好,但庫(kù)存量低,則繼續(xù)生產(chǎn);若該產(chǎn)品銷售不好,且?guī)齑媪坎坏?,則停止生產(chǎn)。解法如下:確定規(guī)則的個(gè)數(shù)。對(duì)于本題有2個(gè)條件(銷售、庫(kù)存),每個(gè)條件可以有兩個(gè)取值,故有22=4種規(guī)則。列出所有的條件樁和動(dòng)作樁。填入條件項(xiàng)。填入動(dòng)作項(xiàng),得到初始決策表,如表3-11所示。3.4.2決策表法的應(yīng)用決策表最突出的優(yōu)點(diǎn)是,能夠?qū)?fù)雜的問(wèn)題按照各種可能的情況全部列舉出來(lái),簡(jiǎn)明并避免遺漏。因此,利用決策表能夠設(shè)計(jì)出完整的測(cè)試用例集合。運(yùn)用決策表設(shè)計(jì)測(cè)試用例,可以將條件理解為輸入,將動(dòng)作理解為輸出。例如,某股票公司的傭金政策如下:如果一次銷售額少于1000元,那么基礎(chǔ)傭金將是銷售額的8.4%;如果銷售額至少1000元,但少于10000元,那么基礎(chǔ)傭金將是銷售額的5%,外加34元;如果銷售額至少10000元,那么基礎(chǔ)傭金將是銷售額的4%,外加134元。另外銷售單價(jià)和銷售的份數(shù)對(duì)傭金也有影響。如果單價(jià)低于14元/份,則外加基礎(chǔ)傭金的5%,此外若不是整百的份數(shù),再外加4%的基礎(chǔ)傭金;若單價(jià)在14元/份以上,但低于25元/份,則加2%的基礎(chǔ)傭金,若不是整百的份數(shù),再外加4%的基礎(chǔ)傭金;若單價(jià)在25元/份以上,并且不是整百的份數(shù),則外加4%的基礎(chǔ)傭金。詳細(xì)解析見書中所示。3.5因果圖法

3.5.1因果圖法因果圖法就是一種利用圖解法分析輸入的各種組合情況,從而設(shè)計(jì)測(cè)試用例的方法,它適合于檢查程序輸入條件的各種情況的組合。在因果圖中使用4種符號(hào)分別表示4種因果關(guān)系,如圖3-2所示。用直線連接左右節(jié)點(diǎn),其中左節(jié)點(diǎn)Ci表示輸入狀態(tài)(或稱原因),右節(jié)點(diǎn)ei表示輸出狀態(tài)(或稱結(jié)果)。Ci和ei都可取值0或1,0表示某狀態(tài)不出現(xiàn),1表示某狀態(tài)出現(xiàn)。圖3-2中各符號(hào)的含義如下:恒等:若C1是1,則e1也是1,否則e1為0。非:若C1是1,則e1是0,否則e1為1?;颍喝鬋1或C2或C3是1,則e1是1,否則e1為0。與:若C1和C2都是1,則e1是1,否則e1為0。(a)恒等(b)非(c)或(d)與圖3-2因果圖的基本符號(hào)在實(shí)際問(wèn)題中,輸入狀態(tài)相互之間還可能存在某些依賴關(guān)系,我們稱之為約束。例如,某些輸入條件本身不可能同時(shí)出現(xiàn)。輸出狀態(tài)之間也往往存在約束,在因果圖中,以特定的符號(hào)標(biāo)明這些約束,如圖3-3所示。對(duì)輸入條件的約束有:E約束(異):a和b中最多有一個(gè)可能為1,即a和b不能同時(shí)為1。I約束(或):a、b和c中至少有一個(gè)必須是1,即a、b和c不能同時(shí)為0。O約束(惟一):a和b中必須有一個(gè)且僅有一個(gè)為1。R約束(要求):a是1時(shí),b必須是1,即a是1時(shí),b不能是0。對(duì)輸出條件的約束只有M約束。M約束(強(qiáng)制):若結(jié)果a是1,則結(jié)果b強(qiáng)制為0。(a)異(b)或(c)惟一(d)要求(e)強(qiáng)制圖3-3約束符號(hào)利用因果圖法生成測(cè)試用例需要以下幾個(gè)步驟,如圖3-4所示。分析軟件規(guī)格說(shuō)明書中的輸入輸出條件,并且分析出等價(jià)類。分析規(guī)格說(shuō)明中的語(yǔ)義的內(nèi)容,通過(guò)這些語(yǔ)義來(lái)找出相對(duì)應(yīng)的輸入與輸入之間,輸入與輸出之間的對(duì)應(yīng)關(guān)系。將對(duì)應(yīng)的輸入與輸入之間,輸入與輸出之間的關(guān)系連接起來(lái),并且將其中不可能的組合情況標(biāo)注成約束或者限制條件,形成因果圖。將因果圖轉(zhuǎn)換成決策表。將決策表的每一列作為依據(jù),設(shè)計(jì)測(cè)試用例。從因果圖生成的測(cè)試用例中包括了所有輸入數(shù)據(jù)的取TRUE與FALSE的情況,構(gòu)成的測(cè)試用例數(shù)目達(dá)到最少,且測(cè)試用例數(shù)目隨輸入數(shù)據(jù)數(shù)目的增加而線性地增加。圖3-4因果圖法示例3.5.2因果圖法測(cè)試用例某軟件規(guī)格說(shuō)明中包含這樣的要求:輸入的第一個(gè)字符必須是A或B,第二個(gè)字符必須是一個(gè)數(shù)字,在此情況下進(jìn)行文件的修改;但如果第一個(gè)字符不正確,則給出信息L;如果第二個(gè)字符不是數(shù)字,則給出信息M。

解法如下:(1)分析程序的規(guī)格說(shuō)明,列出原因和結(jié)果。原因:C1----第一個(gè)字符是AC2----第一個(gè)字符是BC3----第二個(gè)字符是一個(gè)數(shù)字結(jié)果:e1----給出信息L

e2----修改文件

e3----給出信息M(2)將原因和結(jié)果之間的因果關(guān)系用邏輯符號(hào)連接起來(lái),得到因果圖,如圖3-5所示。編號(hào)為11的中間節(jié)點(diǎn)是導(dǎo)出結(jié)果的進(jìn)一步原因。圖3-5因果圖示例圖3-6具有E約束的因果圖因?yàn)镃1和C2不可能同時(shí)為1,即第一個(gè)字符不可能既是A又是B,在因果圖上可對(duì)其施加E約束,得到具有約束的因果圖,如圖3-6所示。(3)將因果圖轉(zhuǎn)換成決策表,如表3-14所示。(4)設(shè)計(jì)測(cè)試用例。表3-14中的前兩種情況,因?yàn)樵?和原因2不可能同時(shí)為1,所以應(yīng)排除這兩種情況。根據(jù)此表,可以設(shè)計(jì)出6個(gè)測(cè)試用例,如表3-15所示。規(guī)則選項(xiàng)12345678條件C111110000C211001100C31010101011111100動(dòng)作e1000011e2101000e3010101不可能11測(cè)試用例A5A#B9B?X2Y%表3-14決策表表3-15測(cè)試用例編號(hào)輸入數(shù)據(jù)預(yù)期輸出TC1A5修改文件TC2A#給出信息MTC3B9修改文件TC4B?給出信息MTC5X2給出信息LTC6Y%給出信息L和信息M3.6實(shí)例設(shè)計(jì)本節(jié)將以成績(jī)管理系統(tǒng)為例,介紹在實(shí)際項(xiàng)目中如何來(lái)做黑盒測(cè)試。測(cè)試用例的設(shè)計(jì)方法不是單獨(dú)存在的,具體到每個(gè)測(cè)試項(xiàng)目里都會(huì)用到多種方法,在實(shí)際測(cè)試中,往往是綜合使用各種方法才能高效率、高質(zhì)量的完成測(cè)試。一個(gè)好的測(cè)試策略和測(cè)試方法必將給整個(gè)測(cè)試工作帶來(lái)事半功倍的效果,從而充分利用有限的人力和物力資源。在本系統(tǒng)中,登錄窗口的界面如圖3-7所示,成績(jī)錄入窗口的界面如圖3-8所示。在登錄窗口中不考慮身份選擇情況,只驗(yàn)證用戶名和密碼以及登錄、重填按鈕的正確性。用戶名和密碼的輸入條件均要求為不超過(guò)16位,可以使用漢字、英文字母和數(shù)字及各種組合。首先應(yīng)用等價(jià)類劃分法對(duì)用戶名和密碼進(jìn)行等價(jià)類劃分(包括有效等價(jià)類和無(wú)效等價(jià)類),如表3-16所示。圖3-7系統(tǒng)登錄界面圖3-8成績(jī)錄入界面表3-16登錄窗口的等價(jià)類表輸入條件有效等價(jià)類編號(hào)無(wú)效等價(jià)類編號(hào)用戶名1~16位1空值5多于16位6英文字母、數(shù)字、漢字組合2組合中含有除英文字母、數(shù)字、漢字之外的其他字符7密碼1~16位3空值8多于16位9英文字母、數(shù)字、漢字組合4組合中含有除英文字母、數(shù)字、漢字之外的其他字符10登錄窗口除了要驗(yàn)證用戶名和密碼的有效性,還要驗(yàn)證各個(gè)功能之間的正確性。因此,再應(yīng)用決策表法。登錄窗口對(duì)應(yīng)的決策表如表3-17所示。表3-17登錄窗口的決策表根據(jù)上述分析,可以確定測(cè)試用例如表3-18所示。

成績(jī)錄入窗口的需求規(guī)格說(shuō)明如下:界面應(yīng)包括三個(gè)下拉列表,分別用于顯示各學(xué)院名稱、各系部名稱及各班級(jí)名稱。只有選擇了某一個(gè)學(xué)院后,系部列表框才為可用,列表中將顯示出所選擇學(xué)院對(duì)應(yīng)的所有系部;同樣,只有選擇了某一個(gè)學(xué)院后,又選擇了某一個(gè)系部,此時(shí)班級(jí)列表框才為可用,列表中將顯示出所選擇系部對(duì)應(yīng)的所有班級(jí)。當(dāng)三個(gè)選項(xiàng)都已經(jīng)完成選擇后,界面上則會(huì)顯示出所選班級(jí)的名單,這時(shí)就可以錄入成績(jī)了。對(duì)于本例,可以利用決策表的方法來(lái)設(shè)計(jì)測(cè)試用例,步驟如下:1.建立決策表。由規(guī)格說(shuō)明可以分析出,基本輸入事件有:C1:選擇學(xué)院C2:選擇系部C3:選擇班級(jí)基本輸出事件有:a1:顯示所選班級(jí)名單a2:學(xué)院列表框可用a3:系部列表框可用a4:班級(jí)列表框可用a5:顯示各學(xué)院名稱a6:顯示各系部名稱a7:顯示各班級(jí)名稱a8:不能顯示具體選項(xiàng)(如在沒有選擇學(xué)院的前提下,系部列表框中將不能顯示所對(duì)應(yīng)的具體系部)根據(jù)上述分析得出的輸入事件、輸出事件建立決策表,如表3-19所示。2.確定測(cè)試用例,如表3-20所示。表3-19輸入和輸出決策表表3-20成績(jī)錄入窗口測(cè)試用例3.7測(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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 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)論