說功能測試有些陌生了挺物,說黑盒測試,哇飘弧,原來是這貨识藤,他還有別的名字砚著,數(shù)據(jù)驅(qū)動(dòng)測試,行為測試等痴昧。
2 黑盒測試
雖說功能測試基本不涉及代碼稽穆,但類似白盒測試的靜態(tài)分析,如果紙上談兵赶撰,需要做的工作就更多了舌镶。一般而言,功能測試有以下策略豪娜,等價(jià)類劃分餐胀、邊界值分析、錯(cuò)誤推測瘤载、因果圖和綜合策略否灾,很明顯,一個(gè)個(gè)都是大名鼎鼎的惕虑。
黑盒測試多是用于發(fā)現(xiàn)功能缺失坟冲,性能偏差磨镶,數(shù)據(jù)處理錯(cuò)誤溃蔫,初始化和終止錯(cuò)誤,與白盒測試不同琳猫,他更多的是發(fā)現(xiàn)沒有BUG的BUG伟叛。
黑盒測試注重于測試軟件的功能性需求,也即黑盒測試使軟件工程師派生出執(zhí)行程序所有功能需求的輸入條件脐嫂。黑盒測試并不是白盒測試的替代品统刮,而是用于輔助白盒測試發(fā)現(xiàn)其他類型的錯(cuò)誤。
PS. 記得柳博士對功能性需求問題特別強(qiáng)調(diào)账千,想必也是產(chǎn)品經(jīng)理的好料子侥蒙。
等價(jià)類劃分
把程序的輸入進(jìn)行分類。從每一類中選出幾個(gè)具有普遍性的例子作為測試用例匀奏。
等價(jià)類是指某個(gè)輸入域的子集合.在該子集合中鞭衩,各個(gè)輸入數(shù)據(jù)對于揭露程序中的錯(cuò)誤都是等效的;等價(jià)類劃分可有兩種不同的情況:有效等價(jià)類和無效等價(jià)類娃善。
這里同時(shí)聲明一個(gè)重要的概念论衍,黑盒,非常在乎輸入輸出聚磺,因?yàn)閮?nèi)部實(shí)現(xiàn)不清楚坯台,他只有盯著輸入輸出看了。
邊界值分析
邊界值分析方法是對等價(jià)類劃分方法的補(bǔ)充瘫寝。是劃分有效無效邊界的一種方式蜒蕾。首先應(yīng)確定邊界情況稠炬。通常輸入和輸出等價(jià)類的邊界,就是應(yīng)著重測試的邊界情況滥搭。應(yīng)當(dāng)選取正好等于酸纲,剛剛大于或剛剛小于邊界的值作為測試數(shù)據(jù),而不是選取等價(jià)類中的典型值或任意值作為測試數(shù)據(jù)瑟匆。
錯(cuò)誤推測
基于經(jīng)驗(yàn)和直覺推測程序中所有可能存在的各種錯(cuò)誤闽坡,從而有針對性的設(shè)計(jì)測試用例的方法〕盍铮基于同類測試的專家知識庫實(shí)現(xiàn)測試用例的設(shè)計(jì)方式疾嗅。
因果圖
前邊的方法考量的是單一輸入導(dǎo)致的問題檢測,還應(yīng)考慮輸入條件之間的相互組合冕象,采用一種適合于描述對于多種條件的組合代承,相應(yīng)產(chǎn)生多個(gè)動(dòng)作的形式來考慮設(shè)計(jì)測試用例。這就需要利用因果圖(邏輯模型)渐扮。因果圖方法最終生成的就是判定表论悴。它適合于檢查程序輸入條件的各種組合情況。
⑴ 分析軟件規(guī)格說明描述中墓律,那些是原因(即輸入條件或輸入條件的等價(jià)類)膀估,那些是結(jié)果(即輸出條件),并給每個(gè)原因和結(jié)果賦予一個(gè)標(biāo)識符.
⑵ 分析軟件規(guī)格說明描述中的語義.找出原因與結(jié)果之間耻讽,原因與原因之間對應(yīng)的關(guān)系. 根據(jù)這些關(guān)系察纯,畫出因果圖.
⑶ 由于語法或環(huán)境限制,有些原因與原因之間针肥,原因與結(jié)果之間的組合情況不不可能出現(xiàn). 為表明這些特殊情況饼记,在因果圖上用一些記號表明約束或限制條件.
⑷ 把因果圖轉(zhuǎn)換為判定表.
⑸ 把判定表的每一列拿出來作為依據(jù),設(shè)計(jì)測試用例.
工具
WinRunner