引言:
什么是黑盒測試呢!?
像我一樣的測試小白就會望文生義了:對黑盒子測試
那么黑盒子是什么!?
思考5秒后,得出了這樣的答案:黑盒子就是黑色的盒子,嘿嘿!
正文:
1.黑盒測試的定義
黑盒測試以客戶的視點進行,進行黑盒測試的測試工程師只知道輸入值集合和預期的輸出,不知道這些輸入時如何被軟件轉化為輸出的。
2.黑盒測試的意義
黑盒測試基于需求實施
黑盒測試即檢查已描述的需求還檢查隱含的需求
黑盒測試要包括最終用戶視角
黑盒測試采用有效和無效輸入
3.黑盒測試的時機
黑盒測試活動要求測試團隊從項目生存周期的開始就介入
4.黑盒測試的方法
(1)基于需求的測試
需求包括已知需求和隱含需求
需求測試的前提是需求規格說明書(SRS)要經過仔細評審
對需求用“需求跟蹤矩陣(RTM)”進行跟蹤
(2)正面和負面測試
正面測試用于驗證已知測試條件,負面測試用于通過未知條件把產品搞垮
正面測試和負面測試的差別在于它們的覆蓋率計算方法,負面測試是沒用窮盡的
(3)邊界值分析
檢查數據值對計算有影響的級差或不連續點,不連續點就是邊界值,需要徹底測試
檢查內部極限
包含在邊界值測試內容中的還有在文檔中已經說明的對硬件資源的限制
對于輸入值和輸出值都要進行邊界值分析
(4)決策表
形成決策表的步驟:
1.確定決策變量
2.確定每個決策變量的可能取值
3.枚舉每個變量允許值得組合
4.確定變量對于其他輸入變量組合沒有的取值,并用“—(無所謂)”符號表示
5.對于每個決策變量取值組合,列出行動或預期結果
6.形成表格
(5)等價劃分
:用于確定少量能夠產生盡可能多的不同輸出條件的有代表性的輸入值
產生同一個預期輸出的一組輸入值叫做一個劃分
采用這種技術進行測試包括兩個步驟
(a).針對產品的輸入和輸出取值的完備集,確定所有劃分
(b).從每個劃分中取出一個成員進行測試,以最大化覆蓋率
(6)基于狀態或基于圖的測試
適用于:
1.應用程序可以用一組狀態刻畫
2.已經很好理解引發從一個狀態到另一個狀態遷移的數據值
3.已經很好理解每個狀態內部對所接收數據的處理方法
(7)兼容性測試
確保產品功能對于不同基礎設施組件能夠一致地發揮作用的測試叫做兼容性測試
執行兼容性測試使用兼容表的通用常用技術有:?
? ? ? ? 橫向組合和智能采樣
涉及產品本身部件的產品兼容性測試可以進一步分為
? ? ? ? 反向兼容測試和正向兼容測試
(8)用戶文檔測試
用戶文檔測試要保證文檔與產品的相互一致
(9)領域測試
領域測試是測試人員運用自己的領域知識測試產品對于用戶日常工作適合性的測試
黑盒測試方法小結
?