第2講 黑盒測試 3_第1頁
第2講 黑盒測試 3_第2頁
第2講 黑盒測試 3_第3頁
第2講 黑盒測試 3_第4頁
第2講 黑盒測試 3_第5頁
已閱讀5頁,還剩81頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、ECJTU 軟軟 件件 測測 試試 技技 術(shù)術(shù) bugs 第第2 2講講 黑盒測試技術(shù)黑盒測試技術(shù)3 3 軟件工程 趙麗萍 創(chuàng)新大樓 西樓403 -2- ECJTU黑盒測試黑盒測試 基于正交表的測試 基于場景的測試 基于狀態(tài)轉(zhuǎn)換圖的測試 信息采集系統(tǒng)案例實踐 -3- ECJTU正交表測試 測試問題 1. 邊界值測試中,基于單缺陷假設(shè):即采用弱邊界法, 每個用例僅覆蓋某個輸入的邊界,其他輸入取正常值 多個輸入取邊界的組合情況未考慮,忽略了各種 邊界組合用例(數(shù)量龐大),實際上存在測試漏洞! 需要補充測試來彌補漏洞(要求較少的工作量和 均衡的測試分布) 2. 當(dāng)對被測對象的邊界、等價毫無概念時,如

2、何選擇 測試數(shù)據(jù)和設(shè)計用例呢? -4- ECJTU正交表測試 正交表測試法: 通過引入正交表,利用其數(shù)據(jù)均布的特性來設(shè)計 測試用例(即從全面試驗中挑選有代表性的試驗點) 避免測試的片面性,達到合理分布測試點,并有 效降低測試工作量的目的。 特性: 均勻分散:試驗點均勻分布在整個試驗范圍,每個試 驗點有充分的代表性 整齊可比:性能測試中,便于結(jié)果分析,可以充分估 計出每個試驗條件對試驗指標(biāo)的影響。 A1 A2 A3 各有3個用例(試驗點) A2 分別與 B C 的3個數(shù)值組合 -5- ECJTU正交表法 一個案例故事 1992 AT&T發(fā)表了一篇在測試過程中使用正交表 的一個案例,基于局域網(wǎng)的電

3、子郵件軟件的回歸測試。 最初制定的測試計劃是用18周的時間執(zhí)行1500個 測試用例。但是,開發(fā)進度推遲了,測試時間被壓縮 到僅8周時間。 測試負(fù)責(zé)人采取另外一個測試方案和計劃,即2 個人8周的時間測試1000個測試用例,但是他不敢保 證測試的質(zhì)量,對這些用例檢測缺陷的能力不放心。 為了減輕這種不確定性的問題,他用正交表法重 新設(shè)計了測試用例,此時測試用例只有422個。 -6- ECJTU正交表法 于是,用這422個測試用例去測試,發(fā)現(xiàn)了41個 缺陷。開發(fā)人員修復(fù)缺陷,然后軟件就發(fā)布了。 后來,在使用的兩年時間內(nèi),凡被測試到的領(lǐng)域 都沒有再發(fā)現(xiàn)缺陷,因此在發(fā)現(xiàn)缺陷這方面,此測試 計劃是100%有

4、效。 據(jù)測試負(fù)責(zé)人估計,如果AT&T采用之前的1000 個測試用例的測試計劃,可能僅僅只發(fā)現(xiàn)這些缺陷中 的32個,將遺漏9個缺陷。 與最初的計劃相比,用正交表設(shè)計測試用例執(zhí)行 工作量不到50%,但卻有效地保證產(chǎn)品質(zhì)量。 -7- ECJTUL L9 9(3(34 4) ) 正交表正交表 用例用例ID A 紅B 啤C 白D 黃輸出y 1A1B1C1D1y1 2A1B2C2D2y2 3A1B3C3D3y3 4A2B1C2D3y4 5A2B2C3D1y5 6A2B3C1D2y6 7A3B1C3D2y7 8A3B2C1D3y8 9A3B3C2D1y9 紅酒、啤酒、白酒、黃酒, 共有4個輸入,各均勻取3

5、個測試數(shù)據(jù),3種取值 也可以是邊界數(shù)據(jù) L9(34),n,q,s 表中數(shù)字,代表輸入取值的標(biāo)號 對于功能測試,y代表預(yù)期輸出 對于性能測試,y代表相關(guān)的性能指標(biāo) -8- ECJTU正交表測試 正交表 正交表 Ln(qs),如,如L9(34), L16(45) n 實際正交組合數(shù),行數(shù)(生成的用例數(shù)) q 每個輸入條件所取的測試數(shù)據(jù)數(shù)量 s 輸入條件的總數(shù) qs 理論上全組合方式的測試用例數(shù)量。 如傭金問題,紅酒、啤酒、白酒、黃酒,共有4 個輸入 q=3,各均勻取3個測試數(shù)據(jù) s=4(或邊界、等 價類),有34 種組合。 n qs ,9 34 正交表用例的數(shù)量很少 -9- ECJTU正交表測試

6、全組合 簡單組合 正交表 簡單組合: A1 有5個,A2 A3 各1個數(shù)據(jù)覆蓋。 B1 B2各3個,B3 有1個。 簡單組合: 從整體空間上,和 兩兩組合上看,也 不平衡,有遺漏。 -10- ECJTU正交表測試 正交表的性質(zhì): 1)每一列中每個輸入條件的各個測試數(shù)據(jù)出現(xiàn) 的次數(shù)相同 因而,每個輸入的每種取值與其他輸入的所有取 值構(gòu)成測試用例的概率完全相同。 2)任意兩列所構(gòu)成的各有序數(shù)對出現(xiàn)的次數(shù)相 同 表中 A和B(及AC BD等任意兩輸入)的9種組合 都恰好出現(xiàn)了一次 充分保證用例在整個取值空間分布的均勻性,保 證了測試用例的代表性。 -11- ECJTUL L9 9(3(34 4) )

7、 正交表正交表 用例用例ID A 紅B 啤C 白D 黃輸出y 1A1B1C1D1y1 2A1B2C2D2y2 3A1B3C3D3y3 4A2B1C2D3y4 5A2B2C3D1y5 6A2B3C1D2y6 7A3B1C3D2y7 8A3B2C1D3y8 9A3B3C2D1y9 -12- ECJTU正交表測試 正交表測試法的特點 無需窮舉所有組合情況,只需要使用少量的抽樣組合 數(shù)據(jù)構(gòu)成測試用例,可明顯地提高效率 用正交表抽樣出的組合數(shù)據(jù)分布均勻,對組合情況具 有最佳的覆蓋性 能避免減少手動對組合數(shù)據(jù)抽樣導(dǎo)致的大量測試遺漏 -13- ECJTU正交表測試 一般步驟 將整體輸入域拆分為個體輸入域,確

8、定所有輸入條件 及其最大取值范圍 確定每個輸入條件的取值個數(shù) 按等距或者系統(tǒng)業(yè)務(wù)特性等確定取值數(shù)量,并確 定具體測試數(shù)值。 選擇合適的正交表 測試人員沒必要創(chuàng)建正交表,會選擇好就行 建立測試正交表(即設(shè)計測試用例) -14- ECJTU正交表測試 選擇正交表 正交表 Ln(qs),如,如L9(34) , L16(45), L8(27) n 實際正交組合數(shù),行數(shù);q 每個輸入條件所取的 測試數(shù)據(jù)數(shù)量; s 輸入條件的總數(shù)。 假設(shè) ni 個輸入條件,每個輸入有 nv 個取值, 例如年月日 ni=3,各取 3個典型數(shù)據(jù),則: 1)表中的輸入的取值數(shù) q 應(yīng)等于 nv 2)表的列數(shù) s 應(yīng)不小于 ni

9、 3)表的行數(shù) n 不小于 所需的最小測試用例數(shù) 正交表的行數(shù) n = 1 + q ( s 1) -15- ECJTUL L9 9(3(34 4) ) 正交表正交表 用例用例ID A 紅B 啤C 白D 黃輸出y 1A1B1C1D1y1 2A1B2C2D2y2 3A1B3C3D3y3 4A2B1C2D3y4 5A2B2C3D1y5 6A2B3C1D2y6 7A3B1C3D2y7 8A3B2C1D3y8 9A3B3C2D1y9 選取3列的子表,也滿足 前面的各種性質(zhì) -16- ECJTU正交表測試 選表時的一些情況 針對已有輸入條件個數(shù) ni 和測試數(shù)據(jù)個數(shù) nv,找不 到合適的正交表。 如5個輸

10、入,分別3個取值, L9(34)就不合適。應(yīng) 增加 1個測試數(shù)據(jù),來貼近差距最小的正交表 L16(45) 。 可以增加抽取重要的測試數(shù)據(jù)。 對測試用例的規(guī)模有一定要求時,可以選擇用例數(shù)多 的正交表。 所有輸入條件的測試數(shù)據(jù)個數(shù)并非完全相同,應(yīng)按輸 入條件最多的測試數(shù)據(jù)選擇正交表。 同時,其他的輸入條件補足測試數(shù)據(jù)。 -17- ECJTU正交表測試 捉蟲實踐:NextDate 結(jié)合邊界的正交表測試 測試一:2個邊界 年份:1800, 2050;月份:1, 12;日期:1, 31 最少用例數(shù) n = 1 + q ( s 1) = 1+3x(2-1) = 4 選擇L4(23) 包含各種兩兩組合 -1

11、8- ECJTU正交表測試 測試三:邊界+2個鄰域值 年:1800, 1801, 2049, 2050; 月:1, 2, 11, 12;日:1, 2, 30, 31 最少用例數(shù) = 1+3x(4-1) = 10,選擇L16(45) JPGc23_p71_2.png -19- ECJTU正交表測試 結(jié)合邊界的測試分析 與邊界值法(單缺陷假設(shè))對比 對比指標(biāo):用例典型性 針對特殊值的測試用例所占比例 -20- ECJTU正交表測試 從用例數(shù)量和典型性來看,正交表的測試效果更好一 些。 正交表的用例在缺陷隔離定位方面不如邊界值法。 綜合來看,二者應(yīng)該結(jié)合使用。 邊界值法基于單缺陷假設(shè),可有效控制用例

12、規(guī)模,便 于缺陷隔離和定位。 正交表法的邊界用例會覆蓋多個條件取邊界的組 合情況,且用例分布均勻,便于覆蓋到強邊界,起到 很好的補充作用。 -21- ECJTU正交表測試 捉蟲實踐:NextDate 結(jié)合等價類的正交表測試 測試二:有效取值范圍三等分抽取數(shù)據(jù)。 年份:1883, 1966;月份:4,8;日期:10, 20 最少用例數(shù) = 1+3x(2-1) = 4,選擇L4(23) -22- ECJTU正交表測試 測試三:有效取值范圍五等分抽取數(shù)據(jù)。 年份:1850, 1900, 1950, 2000; 月份:3,5,7,9; 日期:6,12,18,24 選擇L16(45) JPGc23_p7

13、2_2.png 都是普通日期 -23- ECJTU正交表測試 測試四:采用等價類劃分 JPGc2_p57.png 年份:1850, 1900, 2000, 2004; 月份:2, 3, 6, 10; 日期:14, 29, 30, 31 選擇L16(45) JPGc23_p73.png -24- ECJTU正交表測試 測試五:采用更合理的等價類劃分 JPGc22_p64_2.png 年份:1850, 1900, 1950, 2000, 2004; 月份:2, 3, 6, 8, 12; 日期:14, 28, 29, 30, 31 選擇L25(56) c23_p73_2.png c23_p74.pn

14、g -25- ECJTU正交表測試 等價類測試(強組合) vs 正交表測試 用例典型性:針對特殊值的測試用例 查看書上 P75 表3.34 未運用等價類時(測試二三),兩方法的效果都不好。 隨著測試數(shù)據(jù)增加,等價類法(均勻劃分)的測 試用例數(shù)量增大很快,難以改善測試漏洞。 相對而言,正交表法的測試用例更均勻,用例規(guī) 模小,體現(xiàn)出更大的優(yōu)勢。 -26- ECJTU正交表測試 運用等價類后,等價類的測試漏洞更少了。 正交表法盡管用例數(shù)量少,但用例典型性不如等 價類法 等價劃分合理時,等價類法可以確保良好的測試效果, 一般不需要使用正交表法測試。 一般應(yīng)采用邊界值法和等價類法。并結(jié)合邊界值 來建立正

15、交表進行補充,從而測試多個邊界缺陷共存 的情況。 用例數(shù)代表性年末月末閏月不存在 正交表2536%4%12%8%12% 等價類4040%5%10%10%15% -27- ECJTU正交表測試 小結(jié) 正交表法:根據(jù)正交性原理,從全組合測試中挑選具 有一定代表性的測試用例。 優(yōu)點:用例數(shù)量少、測試分布均勻 適合于處理對數(shù)據(jù)完全不了解或者針對邊界進行補充 測試的情況。 當(dāng)充分結(jié)合業(yè)務(wù)與數(shù)據(jù)特點設(shè)計時,正交表很難 體現(xiàn)優(yōu)勢。 相比 NextDate,傭金問題更適合采用正交表法,其輸 入間不存在關(guān)聯(lián)性,且約束條件少(2個邊界)。 -28- ECJTU正交表測試 難點:根據(jù)系統(tǒng)的輸入條件選擇合適的正交表。

16、 無法使用正交表的情況: 輸入條件數(shù)太多; 輸入條件之間是互斥關(guān)系,即一個輸入條件存在時, 另一個輸入條件不存在 -29- ECJTU正交表法 正交表法(補充) 如何查找正交表 Technical Support () http:/ t 查Dr. Genichi Taguchi設(shè)計的正交表 http:/www.york.ac.uk/depts/maths/tables/orthogonal.htm 上面查詢 數(shù)理統(tǒng)計、試驗設(shè)計等方面的書及附錄中 -30- ECJTU正交表測試 正交表法(補充) 假設(shè)要為某個電子商務(wù)系統(tǒng)測試各種Web客戶端的兼 容性。 涉及到操作系統(tǒng)、瀏覽器、網(wǎng)絡(luò)連接 問題簡化

17、:Windows/Linux、IE/Netscape、撥號/DSL 使用 L4(23) 正交表,節(jié)省大量的測試工作量。 WinIE撥號 WinNetscapeDSL LinIEDSL LinNetscape撥號 -31- ECJTU正交表測試 例如,有個構(gòu)造電子商務(wù)站點的系統(tǒng),必須支持 各種客戶端和服務(wù)器配置。有以下7種因素及選項: 瀏覽器 3種, 主機操作系統(tǒng) 3種,網(wǎng)絡(luò)連接 3種 Web 服務(wù) 器 3種,應(yīng)用服務(wù)器 5種 數(shù)據(jù)庫服務(wù)器 5種,服務(wù)器操作系統(tǒng) 4種 3x3x3x3x5x5x4 = 8100種組合 需要使用正交表來解決這個問題(選擇某正交表,只 需要49種組合) 正交表還可以進

18、行性能指標(biāo)分析,找出對指標(biāo)影響最 大的條件,并確定性能調(diào)整的方向 -32- ECJTU等價類測試 作業(yè):三角形問題 三角形軟件接受三個整數(shù)a、b和c作為輸入,用作三 角形的邊。 程序的輸出是由這三條邊確定的三角形類型:等邊三 角形、等腰三角形、不等邊三角形或非三角形。 整數(shù)a、b和c必須滿足以下條件: C1. 1 a 200 C4. a b+c C2. 1 b 200 C5. b c+a C3. 1 c 200 C6. c -34- ECJTU黑盒測試黑盒測試 基于正交表的測試 基于場景的測試 基于狀態(tài)轉(zhuǎn)換圖的測試 信息采集系統(tǒng)案例實踐 -35- ECJTU場景測試 前面的測試方法注重測試數(shù)據(jù)

19、的選擇,適合于函數(shù)層 面展開測試,并不涉及操作步驟。 無法對涉及用戶操作的動態(tài)執(zhí)行過程進行測試覆 蓋。 對于復(fù)雜系統(tǒng),若在功能層面上測試,需要從全局把 握系統(tǒng)的整個業(yè)務(wù)流程,確保針對多個功能點交叉、 存在復(fù)雜約束的條件下,測試可以充分覆蓋到。 即使是單個功能點,也存在操作流程的問題。 針對動態(tài)過程,人們以事件流為核心,提出場景測試 法。 -36- ECJTU場景測試 基本事件流:代表一個被 測的典型功能點或主業(yè)務(wù)。 如發(fā)短信、聽mp3等 備選事件流:基本流上觸發(fā) 點產(chǎn)生的不同事件,觸發(fā)業(yè) 務(wù)流程的分支。如中斷短信、 存草稿 場景:由基本流和備選流構(gòu)成的,從 開始開始到結(jié)束結(jié)束的不同業(yè)務(wù)流程。

20、每個場景對應(yīng)一種具體業(yè)務(wù)應(yīng)用情景 -37- ECJTU場景測試 基于場景的測試 通過分析業(yè)務(wù)事件,包括其觸發(fā)順序和處理結(jié)果, 構(gòu)建各個事件流。 并基于事件的觸發(fā)控制業(yè)務(wù)流程,形成多種不同 場景(具體的用戶應(yīng)用情景),以設(shè)計測試用例。 1)如何根據(jù)需測試的業(yè)務(wù)來構(gòu)建基本流和備選流? 2)如何基于這些事件流構(gòu)建場景,以滿足測試完備 和無冗余的要求? 3)如何根據(jù)場景設(shè)計測試用例? -38- ECJTU場景測試 1)構(gòu)造基本流和備選流 針對每個要測試的業(yè)務(wù),構(gòu)建一個基本流和若干 備選流。 基本流:從系統(tǒng)的某個初始狀態(tài)開始,經(jīng)一系列狀態(tài) 變化后到達終止?fàn)顟B(tài)的過程中最主要的一個業(yè)務(wù)流程 即需求中規(guī)定的正

21、確操作,反映多數(shù)用戶操作系 統(tǒng)的順序。 備選流:在基本流上,每個判定結(jié)點處滿足其觸發(fā)條 件,從而導(dǎo)致其他事件流。 屬于業(yè)務(wù)流程的一個執(zhí)行片段。 -39- ECJTU場景測試 區(qū)別 基本流 備選流 -40- ECJTU場景測試 區(qū)別 備選流1 2 方向 備選流 5 結(jié)束 備選流 3 4 初始 備選流數(shù)目取決于基本流的判定節(jié)點 數(shù),事務(wù)分析的顆粒度(業(yè)務(wù)細節(jié))。 考慮越周全,備選流數(shù)目就越多。 -41- ECJTU 2)場景設(shè)計 從開始到結(jié)束的不同業(yè)務(wù)流程。 場景對應(yīng)具體的應(yīng)用情景, 用于描述用例的路徑。 可以構(gòu)建如下場景: 基本流 基本流+備選流1(/2 /5) 基本流+2+備選流3(/4) 基

22、本流+1+2+3(/4 /5) -42- ECJTU場景測試 備選流數(shù)量大時,可執(zhí)行的路徑越多,場景數(shù)量增加。 如何從大量的場景中,抽取典型場景進行測試, 以滿足測試的完備性和無冗余性要求呢? 設(shè)計場景的基本原則: 1) 最少的場景數(shù)等于事件流的總數(shù)(#基本+#備選) 2) 有且唯一一個場景僅包含基本流 3) 針對每個備選流,至少應(yīng)有一個場景覆蓋它,且場 景中應(yīng)盡量避免覆蓋其他的備選流 -43- ECJTU 3) 針對每個備選流,至少應(yīng)有 一個場景覆蓋它,且場景中應(yīng) 盡量避免覆蓋其他的備選流 最少的場景設(shè)計: 基本流 基本流+備選流1 基本流+備選流2 基本流+備選流5 -44- ECJTU

23、3) 針對每個備選流,至少應(yīng)有 一個場景覆蓋它,且場景中應(yīng) 盡量避免覆蓋其他的備選流 最少的場景設(shè)計: 基本流+2+備選流3 基本流+2+備選流4 -45- ECJTU場景測試 場景法的設(shè)計步驟 分析被測業(yè)務(wù),找到基本流和所有備選流; 根據(jù)基本流和備選流構(gòu)造適當(dāng)規(guī)模的場景集; 根據(jù)場景設(shè)計測試用例; 對每個測試用例補充測試數(shù)據(jù) -46- ECJTU場景測試 測試實踐:自動柜員機 測試ATM機機的用戶取款業(yè)務(wù)用戶取款業(yè)務(wù) 構(gòu)造基本流 P78-79 1 插卡 2 卡校驗(校驗點1) 3 輸入密碼 4 密碼校驗(校驗點2) 5 交易選擇,取款 6 輸入取款金額 7 取款校驗(校驗點3) 8 出鈔 9

24、 憑條打印選擇(校驗點4) 10 提供憑條 11 退卡 系統(tǒng)讀取卡的賬號代碼, 判斷是否為系統(tǒng)接受的卡 基本流中,校驗順利通過 系獲已取卡的預(yù)設(shè)密碼,將輸 入的密碼與其比較是否一致。 基本流中,密碼正確 取款金額為50元的倍數(shù), 且有各種上限限制 系統(tǒng)將賬戶、密碼、交易 類型及金額數(shù)發(fā)送給銀行 系統(tǒng),啟動校驗。 基本流中,用戶選擇打印 交易憑條 -47- ECJTU場景測試 備選流 卡校驗(校驗點1) 備選流1:卡錯誤 密碼校驗(校驗點2) 備選流2:密碼錯誤 備選流3:密碼失敗 基本流和備選流圖 JPGJPG2.2c22_79.png 取款校驗(校驗點3) 備選流4 :輸入金額錯誤 憑條打印

25、選擇(校驗點4) 備選流5:不打印憑條 將卡退回,提示卡無效, 系統(tǒng)回到就緒狀態(tài) 共有三次輸入密碼的機會。 之后,系統(tǒng)提示密碼失敗,并且 吞掉用戶的卡。 系統(tǒng)回到就緒狀態(tài) 備選流2 3,由相同的事件 觸發(fā),觸發(fā)次數(shù)不同,系 統(tǒng)的處理結(jié)果不同。 要求用戶重新輸入金額, 系統(tǒng)返回金額輸入狀態(tài) -48- ECJTU場景測試 場景構(gòu)建 設(shè)計場景的基本原則: 1) 最少的場景數(shù)等于事件流的總數(shù)(#基本+#備選) 2) 有且唯一一個場景僅包含基本流 3) 針對每個備選流,至少應(yīng)有一個場景覆蓋它,且場 景中應(yīng)盡量避免覆蓋其他的備選流 -49- ECJTU場景測試 場景構(gòu)建 場景1(取款成功,且打印憑條):基

26、本流; 場景2(卡錯誤):基本流+備選流1; 場景3(密碼錯誤):基本流+備選流2; 場景4(密碼失敗):基本流+2(x2)+備選流3; 場景5(取款金額錯誤):基本流+備選流4; 場景6(取款成功,不打印憑條):基本流+備選流5 -50- ECJTU場景測試 測試用例設(shè)計 場景為執(zhí)行過程,對應(yīng)各種具體的用戶應(yīng)用情景。 針對每個場景,可以設(shè)計一個或多個測試用例。 1) 根據(jù)場景的流程,分析系統(tǒng)應(yīng)滿足的所有輸入條件 和預(yù)期輸出 2) 對于備選流,應(yīng)確定觸發(fā)該備選流的輸入條件,并 予以標(biāo)記 -51- ECJTU場景測試 測試用例表JPGJPG2.2c22_80.png 表中“V”(valid)表示

27、相應(yīng)條件有效 “I”(invalid)表示觸發(fā)對應(yīng)的某個備選流 “N/A”表示用例中不需要設(shè)計相應(yīng)輸入數(shù)據(jù) -52- ECJTU場景測試 測試數(shù)據(jù)設(shè)計 假設(shè)一個有效的用戶 4210-123-456,密碼為 888888。測試數(shù)據(jù)設(shè)計為:JPGJPG2.2c22_81.png 對于每個測試用例,可以運用邊界值、 等價劃分等方法,來設(shè)計測試數(shù)據(jù)。 如取款金額為49,50,51元,1450元, 1500元,1550元等。密碼設(shè)計為 888881,8888881等 -53- ECJTU場景測試 小結(jié) 通過分析被測業(yè)務(wù)流程,構(gòu)建基本流和備選流,并生 成場景進而得到測試用例的測試方法。 該法主要用于功能測

28、試 主要難點在于如何根據(jù)業(yè)務(wù)實際提煉出基本流,如何 很好地控制備選流的數(shù)量 以及如何從大量的場景中選擇少量典型場景進行 測試 -54- ECJTU場景測試 注意事項 設(shè)計用例時,一個場景可能需要多個測試用例。每個 用例只對應(yīng)一個場景 場景法不適合于從輸出域展開測試 某些場景可能在邏輯上可行,在實際上不可能實現(xiàn) 某通話業(yè)務(wù)的流程 JPGJPG2.2場景_通話.jpg -55- ECJTU課堂作業(yè) 測試用例表 JPGJPG2.2c22_80.png P80 思考題:檢查測試用例表,查看是否所有輸入都取到 “I”。只要有條件未取到“I”就表示測試用例有漏 洞。而測試用例又確實覆蓋到所有 5個場景。

29、這是為什么呢?請大家思考做題。 業(yè)務(wù)分析 場景流程圖 -56- ECJTU黑盒測試黑盒測試 基于正交表的測試 基于場景的測試 基于狀態(tài)轉(zhuǎn)換圖的測試 信息采集系統(tǒng)案例實踐 -57- ECJTU狀態(tài)轉(zhuǎn)換圖 有些系統(tǒng)的輸出和行為方式,不僅與當(dāng)前的輸入 數(shù)據(jù)有關(guān),而且與系統(tǒng)的當(dāng)前狀態(tài)有關(guān)。 如手機、mp3播放軟件、Windows畫圖軟件等 軟件的功能說明的組成 靜態(tài)說明:描述輸入與輸出之間的對應(yīng)關(guān)系 動態(tài)說明:描述輸入數(shù)據(jù)的次序或狀態(tài)轉(zhuǎn)移的次序 狀態(tài)轉(zhuǎn)換圖法:利用功能圖形式化地表示軟件系統(tǒng)的 功能說明,并生成測試用例。 功能圖包括 狀態(tài)遷移圖和邏輯功能模型。 -58- ECJTU狀態(tài)轉(zhuǎn)換圖 Windo

30、ws的屏幕保護程序測試 狀態(tài)遷移圖 3個狀態(tài) 等待輸 入密碼 不正確的密碼輸入 正確的密碼輸入 初始化 屏幕 空閑狀態(tài) 按下Esc鍵 按下其他鍵 -59- ECJTU狀態(tài)轉(zhuǎn)換圖 功能圖包括: 狀態(tài)遷移圖:描述系統(tǒng)狀態(tài)變化的動態(tài)信息(動態(tài)說 明),由輸入及當(dāng)前狀態(tài)決定輸出和后續(xù)狀態(tài)。 邏輯功能模型:描述系統(tǒng)狀態(tài)的靜態(tài)信息(靜態(tài)說 明),表示在狀態(tài)輸入與輸出之間的對應(yīng)關(guān)系,依靠 決策表所表示的邏輯功能。 -60- ECJTU狀態(tài)轉(zhuǎn)換圖 邏輯功能表 輸入 按下Esc鍵I1 按下其他鍵I2 正確的密碼輸入I3 錯誤的密碼輸入I4 輸出 顯示密碼輸入框O1 密碼錯誤提示信息O2 狀態(tài) 空閑狀態(tài)S1 等待

31、輸入狀態(tài)S2 初始化屏幕S3 -61- ECJTU狀態(tài)轉(zhuǎn)換圖 狀態(tài)遷移圖 空閑狀態(tài) 等待輸 入密碼 按下Esc鍵正確的密碼輸入 不正確的密碼輸入 初始化 屏幕 按下其他鍵 S2 S1 S3 I1 I2 I3 I4 O2 O1 -62- ECJTU狀態(tài)轉(zhuǎn)換圖 從邏輯功能表中,可以根據(jù)所有的輸入、輸出以及狀 態(tài)來生成所需要的節(jié)點和路徑,形成實現(xiàn)功能圖的基 本路徑組合。 例如:S1-I1-S2(O1)-I3-S3 需要使用白盒測試用例中的路徑覆蓋法來設(shè)計測試用 例。(將在白盒測試中介紹。) -63- ECJTU黑盒測試黑盒測試 邊界值 等價類 決策表 因果圖 錯誤推測法 正交表 基于場景的測試 狀態(tài)

32、轉(zhuǎn)換圖法 -64- ECJTU黑盒測試總結(jié) 黑盒測試:通過分析 SRS 中有關(guān)被測對象的輸入 和輸出的描述來設(shè)計測試用例,不需要了解具體實現(xiàn) 細節(jié)。 主要分為兩類: 功能層面的測試方法,側(cè)重于系統(tǒng)業(yè)務(wù)流程的梳理。 基本思想:基于動態(tài)業(yè)務(wù)過程設(shè)計用例,目標(biāo)是希望 測試能完全覆蓋所有的主業(yè)務(wù)流程, 保證系統(tǒng)在各功能點交叉約束條件下能實現(xiàn)用戶期望 的基本功能。 典型方法:基于場景的測試 -65- ECJTU黑盒測試總結(jié) 函數(shù)層面的測試方法,側(cè)重于系統(tǒng)測試數(shù)據(jù)的選擇 基本思想:基于靜態(tài)的測試數(shù)據(jù)來設(shè)計用例,目標(biāo)是 希望測試能完全覆蓋所有的有效和無效輸入或輸出域, 并重點覆蓋邊界及邊界附近的數(shù)據(jù),保證系

33、統(tǒng)對所有 可能的輸入數(shù)據(jù)都能正確處理 典型方法:邊界值測試、等價類測試、基于決策表的 測試和基于正交表的測試 -66- ECJTU黑盒測試總結(jié) 醉漢找鑰匙的小故事 測試人員應(yīng)充分了解被測試的系統(tǒng),才有可能了解系 統(tǒng)中最有可能潛伏著哪些種類的缺陷 然后有針對性地選擇測試方法來設(shè)計測試用例。 -67- ECJTU黑盒測試總結(jié) 綜合使用策略實踐 1)對于業(yè)務(wù)流程清晰的系統(tǒng),首先使用場景測試法 覆蓋業(yè)務(wù)流程。 以合適的粒度分析基本流和備選流,構(gòu)造典型場 景,并對每個測試用例使用其他方法設(shè)計測試數(shù)據(jù)。 2)實踐表明,邊界上的缺陷多。因而在任何情況下 都需要使用邊界值測試 先基于單缺陷假設(shè)設(shè)計測試用例,然

34、后利用正交 表法來補充邊界組合的測試用例。 -68- ECJTU黑盒測試總結(jié) 3)在任何情況下都需要使用等價類測試 等價類測試可針對輸入域或輸出域,個體域及整 體域,進行等價劃分,最大程度地保證測試的完備性 和無冗余性。 4)若被測對象輸入條件之間包含相互依賴關(guān)系,或 輸入輸出之間的約束關(guān)系, 基于有效域的等價劃分,使用因果圖法和決策表 法。 -69- ECJTU黑盒測試總結(jié) 5)對于參數(shù)配置類的軟件系統(tǒng),或?qū)Ρ粶y對象完全 不了解時 利用正交表測試法。 6)若被測對象的輸出和行為方式與系統(tǒng)的當(dāng)前狀態(tài) 有關(guān) 利用狀態(tài)轉(zhuǎn)換圖法展開測試。 -70- ECJTU黑盒測試黑盒測試 基于正交表的測試 基于

35、場景的測試 基于狀態(tài)轉(zhuǎn)換圖的測試 信息采集系統(tǒng)案例實踐(實驗二) -71- ECJTU實驗二 網(wǎng)工,第8周,下周周三6-7節(jié)。 地點:測試二室 內(nèi)容:信息采集系統(tǒng)案例實踐(課本4.2) 帶上實驗報告本和課本帶上實驗報告本和課本 軟測,第6周周二 5-6節(jié)節(jié)(軟測班級) 明天明天 10月11號 周六,補7號周二的課 -72- ECJTU信息采集系統(tǒng) 需求規(guī)格說明書 1.2 背景: 主要功能是以學(xué)校為單位(僅針對中小學(xué)),采集 該校所有在校學(xué)生的基本信息和照片信息,并進行自 動校驗。 找出所有不符合要求的信息,提醒學(xué)校負(fù)責(zé)信息 采集的人員(簡稱管理員)進行手動修改,若校驗通過, 系統(tǒng)將自動按照規(guī)范

36、的要求,對全校信息進行匯總和 規(guī)格化處理 以Visual Studio 2008為開發(fā)平臺,采用C+語言 開發(fā)實現(xiàn)。 -73- ECJTU信息采集系統(tǒng) 校驗 信息文件 文件里面的學(xué)號、區(qū)號等信息是否符合格式要求 代碼實驗二0.1相關(guān)說明.doc .江漢區(qū)雙港學(xué)校信息文件采集表采集表(東西湖區(qū)某學(xué)東西湖區(qū)某學(xué) 校校0501班班).xls 照片文件 默認(rèn)轉(zhuǎn)換成 寬282像素,高389像素 的標(biāo)準(zhǔn)尺寸,可 以設(shè)置尺寸 .江漢區(qū)雙港學(xué)校照片文件0501班2006080010001 張三張三.jpg -74- ECJTU信息采集系統(tǒng) 需求規(guī)格說明 登錄界面 用戶名 a 密碼 1 代碼實驗二Student

37、InfoSystem-最終版.exe -75- ECJTU信息采集系統(tǒng) 主界面 選擇“雙港學(xué)?!甭窂阶鳛閷W(xué)校目錄 正常校驗導(dǎo)出 查看文件夾 ., 其他情況:沒有文件;信息/照片文件名;學(xué)號; 2.jpg. -76- ECJTU信息采集系統(tǒng) 需求跟蹤矩陣 P87 -77- ECJTU信息采集系統(tǒng) 軟件的功能需求規(guī)格說明書 靜態(tài)黑盒測試:檢查需求規(guī)格說明書SRS,產(chǎn)品說明 書等,認(rèn)真查找里面的缺陷。 動態(tài)黑盒測試:依照SRS等設(shè)計測試用例,執(zhí)行測試 登錄系統(tǒng) 3.9 信息文件導(dǎo)入、校驗、導(dǎo)出、查看 3.5 3.6 3.7 3.8 教材 P89 照片文件導(dǎo)入、校驗、導(dǎo)出、查看 3.1 3.2 3.3 3.4 -78- ECJTU信息采集系統(tǒng) 測試分析 被

溫馨提示

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

評論

0/150

提交評論