Ⅰ 黑盒測試有哪些方法
黑盒測試不要求測試人員懂得編程的知識,只是按照程序的功能一項一項的測試,並將有問題的功能點找出來就可以了。所以黑盒測試又叫傻瓜測試。
黑盒測試法:一般用來確認軟體功能的正確性和可操作性,目的是檢測軟體的各個功能是否能得以實現,把被測試的程序當作一個黑盒,不考慮其內部結構,在知道該程序的輸入和輸出之間的關系或程序功能的情況下,依靠軟體規格說明書來確定測試用例和推斷測試結果的正確性.
黑盒測試也稱為功能測試,它著眼於程序的外部特徵,而不考慮程序的內部邏輯結構。測試者把被測程序看成一個黑盒,不用關心程序的內部結構。黑盒測試是在程序介面處進行測試,它只檢查程序功能是否能按照規格說明書的規定正常使用,程序是否能適當地接收輸入數據產生正確的輸出信息,並且保持外部信息(如資料庫或文件)的完整性。
黑盒測試主要採用的技術有:等價分類法、邊沿值分析法、錯誤推測法和因果圖等技術。
Ⅱ 黑盒測試的常用方法
功能測試就是對產品的各功能進行驗證,根據功能測試用例,逐項測試,檢查產品是否達到用戶要求的功能。常用的測試方法如下
1. 頁面鏈接檢查:每一個鏈接是否都有對應的頁面,並且頁面之間切換正確。
2. 相關性檢查:刪除/增加一項會不會對其他項產生影響,如果產生影響,這些影響是否都正確。
3. 檢查按鈕的功能是否正確:如update,cancel,delete,save等功能是否正確。
4. 字元串長度檢查: 輸入超出需求所說明的字元串長度的內容,看系統是否檢查字元串長度,會不會出錯.
5. 字元類型檢查: 在應該輸入指定類型的內容的地方輸入其他類型的內容(如在應該輸入整型的地方輸入其他字元類型),看系統是否檢查字元類型,會否報錯.
6. 標點符號檢查: 輸入內容包括各種標點符號,特別是空格,各種引號,回車鍵.看系統處理是否正確.
7. 中文字元處理: 在可以輸入中文的系統輸入中文,看會否出現亂碼或出錯.
8. 檢查帶出信息的完整性: 在查看信息和update信息時,查看所填寫的信息是不是全部帶出.,帶出信息和添加的是否一致
9. 信息重復: 在一些需要命名,且名字應該唯一的信息輸入重復的名字或ID,看系統有沒有處理,會否報錯,重名包括是否區分大小寫,以及在輸入內容的前後輸入空格,系統是否作出正確處理.
10. 檢查刪除功能:在一些可以一次刪除多個信息的地方,不選擇任何信息,按」delete」,看系統如何處理,會否出錯;然後選擇一個和多個信息,進行刪除,看是否正確處理.
11. 檢查添加和修改是否一致: 檢查添加和修改信息的要求是否一致,例如添加要求必填的項,修改也應該必填;添加規定為整型的項,修改也必須為整型.
12. 檢查修改重名:修改時把不能重名的項改為已存在的內容,看會否處理,報錯.同時,也要注意,會不會報和自己重名的錯.
13. 重復提交表單:一條已經成功提交的紀錄,back後再提交,看看系統是否做了處理。
14. 檢查多次使用back鍵的情況: 在有back的地方,back,回到原來頁面,再back,重復多次,看會否出錯.
15. search檢查: 在有search功能的地方輸入系統存在和不存在的內容,看search結果是否正確.如果可以輸入多個search條件,可以同時添加合理和不合理的條件,看系統處理是否正確.
16. 輸入信息位置: 注意在游標停留的地方輸入信息時,游標和所輸入的信息會否跳到別的地方.
17. 上傳下載文件檢查:上傳下載文件的功能是否實現,上傳文件是否能打開。對上傳文件的格式有何規定,系統是否有解釋信息,並檢查系統是否能夠做到。
18. 必填項檢查:應該填寫的項沒有填寫時系統是否都做了處理,對必填項是否有提示信息,如在必填項前加*
19. 快捷鍵檢查:是否支持常用快捷鍵,如Ctrl+C Ctrl+V Backspace等,對一些不允許輸入信息的欄位,如選人,選日期對快捷方式是否也做了限制。
20. 回車鍵檢查: 在輸入結束後直接按回車鍵,看系統處理如何,會否報錯。
Ⅲ 黑盒測試方法有哪些
摘要 您好,常見的黑盒測試方法:
Ⅳ 黑盒測試的主要設計用例方法有哪些
1.等價類劃分 如下圖所示
2. 邊界值:應選取正好等於、剛剛大於、剛剛小於邊界值作為測試數據
3. 錯誤推測法:進行錯誤的操作,驗證程序是否對出錯的場景和情況有應對能力。
4. 因果圖法/判定表法:適合於檢查程序輸入條件的各種組合情況。
5. 場景法:場景描述的業務流程
基本流:主要是功能的正常操作流程
分支流:需要程序做非法判斷處理
Ⅳ 什麼是黑盒測試法,它的常用方法有哪些
「黑盒」測的是功能
黑盒測試也稱功能測試或數據驅動測試。它在已知產品應具有的功能的條件下,通過測試來檢測每個功能是否都能正常使用。在測試時,把程序看作一個不能打開的黑盒子,在完全不考慮程序內部結構和內部特性的情況下,測試者在程序介面進行測試,它只檢查程序功能是否按照需求規格說明書的規定正常使用,程序是否能適當地接收輸入數據而產生正確的輸出信息,並且保持外部信息(如資料庫或文件)的完整性。
「黑盒」法著眼於程序外部結構、不考慮內部邏輯結構、針對軟體界面和軟體功能進行測試。「黑盒」法是窮舉輸入測試,只有把所有可能的輸入都作為測試情況使用,才能以這種方法查出程序中所有的錯誤。實際上測試情況有無窮多個,人們不僅要測試所有合法的輸入,而且還要對那些不合法但是可能的輸入進行測試。
「黑盒」的兩種基本方法
黑盒測試有兩種基本方法,即通過測試和失敗測試。
在進行通過測試時,實際上是確認軟體能做什麼,而不會去考驗其能力如何。軟體測試員只運用最簡單,最直觀的測試案例。
在設計和執行測試案例時,總是先要進行通過測試。在進行破壞性試驗之前,看一看軟體基本功能是否能夠實現。這一點很重要,否則在正常使用軟體時就會奇怪地發現,為什麼會有那麼多的軟體缺陷出現?
在確信了軟體正確運行之後,就可以採取各種手段通過搞「垮」軟體來找出缺陷。純粹為了破壞軟體而設計和執行的測試案例,被稱為失敗測試或迫使出錯測試。
黑盒測試的設計方法
黑盒測試是以用戶的觀點,從輸入數據與輸出數據的對應關系出發進行測試的,它不涉及到程序的內部結構。很明顯,如果外部特性本身有問題或規格說明的規定有誤,用黑盒測試方法是發現不了的。黑盒測試法注重於測試軟體的功能需求,主要試圖發現幾類錯誤:功能不對或遺漏、界面錯誤、數據結構或外部資料庫訪問錯誤、性能錯誤、初始化和終止錯誤。
具體的黑盒測試方法包括等價類劃分、因果圖、正交實驗設計法、邊值分析、判定表驅動法、功能測試等。在使用時,自然要針對開發項目的特點對方法加以適當的選擇。
◆ 等價類劃分
等價類劃分是一種典型的黑盒測試方法,用這一方法設計測試用例可以不用考慮程序的內部結構,只以對程序的要求和說明,即需求規格說明書為依據,仔細分析和推敲說明書的各項需求,特別是功能需求,把說明中對輸入的要求和輸出的要求區別開來並加以分解。
由於窮舉測試的數量太大,以致於無法實際完成,促使我們在大量的可能數據中選取其中的一部分作為測試用例。例如,在不了解等價分配技術的前提下,測試了1+1、1+2、1+3和1+4之後,還有必要測試1+5和1+6嗎?能否放心地認為它們正確嗎?那麼1+999…(可以輸入的最大數值)呢?這個測試用例是否與其他用例不同?是否屬於另外一種類別?另外一個等價區間?這是軟體測試員必須考慮到的問題。
等價類別或者等價區間是指測試相同目標或者暴露相同軟體缺陷的一組測試案例。 1+999…和1+13有什麼區別呢?至於1+13,就像一個普通的加法,與1+5或者1+392沒有什麼兩樣,而1+999…則屬於鄰界的極端情況。假如輸入最大允許數值,然後加1,就會出現問題——也許就是軟體的缺陷。這個極端案例屬於一個單獨的區間,與常規數字的普通區間不同。
等價類劃分的辦法是把程序的輸入域劃分成若幹部分,然後從每個部分中選取少數代表性數據當作測試用例。每一類的代表性數據在測試中的作用等價於這一類中的其他值,也就是說,如果某一類中的一個例子發現了錯誤,這一等價類中的其他例子也能出現同樣的錯誤。使用這一方法設計測試用例,首先必須在分析需求規格說明的基礎上劃分等價類,列出等價類表。
在考慮等價類劃分時,先從程序的功能說明中找出每個輸入條件,然後為每個輸入條件劃分兩個或更多個等價類。等價類可分兩種情況:有效等價類和無效等價類。有效等價類是指對程序的規格說明是有意義的、合理的輸人數據所構成的集合;無效等價類是指對程序的規格說明是不合理的或無意義的輸人數據所構成的集合。
◆ 邊界值分析
軟體測試常用的一個方法是把測試工作按同樣的形式劃分。對數據進行軟體測試,就是檢查用戶輸入的信息、返回結果以及中間計算結果是否正確。
即使是最簡單的程序,要處理的數據也可能數量極大。還記得在計算器上簡單加法的全部可能性嗎?再想一想字處理程序、導航系統和證券交易程序。使這些數據得以測試的技巧(如果稱得上的話)是,根據下列主要原則進行等價分配,以合理的方式減少測試案列:邊界條件、次邊界條件、空值和無效數據。
邊界值分析(Boundary Value Analysis,BVA)是一種補充等價劃分的測試用例設計技術,它不是選擇等價類的任意元素,而是選擇等價類邊界的測試用例。實踐證明,在設計測試用例時,對邊界附近的處理必須給予足夠的重視,為檢驗邊界附近的處理專門設計測試用例,常常可以取得良好的測試效果。BVA不僅重視輸人條件邊界,而且也從輸出域導出測試用例。
邊界值設計測試遵循的五條原則:
1、如果輸入條件規定了取值范圍,應以該范圍的邊界內及剛剛超范圍邊界外的值作為測試用例。如以a和b為邊界,測試用例應當包含a和b及略大於a和略小於b的值;
2、若規定了值的個數,分別以最大、最小個數及稍小於最小、稍大於最大個數作為測試用例;
3、針對每個輸出條件使用上述1、2條原則;
4、如果程序規格說明中提到的輸入或輸出域是個有序的集合(如順序文件、表格等),就應注意選取有序集的第一個和最後一個元素作為測試用例;
5、分析規格說明,找出其他的可能邊界條件。
Ⅵ 黑盒測試方法有哪些,優缺點
優點:
1.對於較大的代碼單元來說,黑盒測試比白盒測試效率較高。
2.測試人員不需要了解細節,包括特定的編程語言。
3.測試人員和開發人員是彼此獨立的。
4.從用戶的角度測試,很容易被理解和接受。
5.有助於暴露與任務規格不一致或者有歧義的地方。
6.測試用例可以在需求規格完成之後馬上執行。
缺點:
1.測試的只有一小部分,不可能測試全部輸入。
2.沒有清潔和簡明的需求規格說明書,測試用例很難設計。
3.如果測試人員,不被告知開發人員已經執行過的用例,在測試數據上會存在不必要的重復。
4.很多測試路徑沒有測試到。
5.不能直接對特定程序段進行測試,改程序段可能隱藏更多錯誤。
6.大部分和研究相關的測試都是直接針對白盒測試的。
不知道能不能解決你的疑問。
Ⅶ 黑盒測試方法有哪些
常用的黑盒測試方法有劃分等價類、邊界值分析法、錯誤推測法、因果圖法、判定表組成法、正交試驗設計、場景法。
黑盒測試,它是通過測試來檢測每個功能是否都能正常使用。在測試中,把程序看作一個不能打開的黑盒子,在完全不考慮程序內部結構和內部特性的情況下。
在程序介面進行測試,它只檢查程序功能是否按照需求規格說明書的規定正常使用,程序是否能適當地接收輸入數據而產生正確的輸出信息。黑盒測試著眼於程序外部結構,不考慮內部邏輯結構,主要針對軟體界面和軟體功能進行測試。
介紹:
黑盒測試是以用戶的角度,從輸入數據與輸出數據的對應關系出發進行測試的。很明顯,如果外部特性本身設計有問題或規格說明的規定有誤,用黑盒測試方法是發現不了的。
黑盒測試被稱為功能測試或數據測試,在測試時,將被測軟體視為一個不能打開的盒子,在完全不考慮程序內部結構和內部特性的情況下來進行測試,採用黑盒測試的主要目的是在已有軟體產品所應具有的功能等基礎上進行下列操作:
1、檢查程序功能是否按照需求規格說明書的要求正常使用,測試每個功能是否有遺漏,測試性能特性是否滿足要求。
2、測試人機交互是否錯誤,檢測數據結構或外部資料庫訪問是否錯誤,程序是否能適當的輸入數據而產生正確的輸出結果,保持外部信息(如資料庫或文件)的完整性。
Ⅷ 黑盒測試方法有哪些
黑盒測試被稱為 功能測試或數據測試,在測試時,將被測軟體視為一個不能打開的盒子,在完全不考慮程序內部結構和內部特性的情況下來進行測試,採用·黑盒測試的主要目的是在已有軟體產品所應具有的功能等基礎上進行下列操作:
1、檢查程序功能是否按照需求規格說明書的要求正常使用,測試每個功能是否有遺漏,測試性能特性是否滿足要求。
2、測試人機交互是否錯誤,檢測數據結構或外部資料庫訪問是否錯誤,程序是否能適當的輸入數據而產生正確的輸出結果,保持外部信息(如資料庫或文件)的完整性。、
3、檢測程序初始化和終止方面的錯誤。
Ⅸ 黑盒測試的方法有哪些定義分別是什麼
具體的黑盒測試方法包括等價類劃分、因果圖、正交實驗設計法、邊值分析、判定表驅動法、功能測試等。
等價類劃分
等價類劃分是一種典型的黑盒測試方法,用這一方法設計測試用例可以不用考慮程序的內部結構,只以對程序的要求和說明,即需求規格說明書為依據,仔細分析和推敲說明書的各項需求,特別是功能需求,把說明中對輸入的要求和輸出的要求區別開來並加以分解。
邊界值分析
軟體測試常用的一個方法是把測試工作按同樣的形式劃分。對數據進行軟體測試,就是檢查用戶輸入的信息、返回結果以及中間計算結果是否正確。邊界值分析(Boundary
Value
Analysis,BVA)是一種補充等價劃分的測試用例設計技術,它不是選擇等價類的任意元素,而是選擇等價類邊界的測試用例。
錯誤推測法是基於經驗和直覺推測程序中所有可能存在的各種錯誤,
從而有針對性的設計測試用例的方法.
錯誤推測方法的基本思想:
列舉出程序中所有可能有的錯誤和容易發生錯誤的特殊情況,根據他們選擇測試用例.
例如,
在單元測試時曾列出的許多在模塊中常見的錯誤.
以前產品測試中曾經發現的錯誤等,
這些就是經驗的總結.
還有,
輸入數據和輸出數據為0的情況.
輸入表格為空格或輸入表格只有一行.
這些都是容易發生錯誤的情況.
可選擇這些情況下的例子作為測試用例.
考慮採用一種適合於描述對於多種條件的組合,相應產生多個動作的形式來考慮設計測試用例.
這就需要利用因果圖(邏輯模型).
因果圖方法最終生成的就是判定表.
它適合於檢查程序輸入條件的各種組合情況.
就是使用已經造好了的正交表格來安排試驗並進行數據分析的一種方法,目的是用最少的測試用例達到最高的測試覆蓋率
Ⅹ 黑盒測試的方法有哪些
一、邊界值測試
經實踐總結:大量的軟體缺陷發生在輸入域和輸出域的邊界上。所以在設計測試用例的時候,應該重視邊界。
例如只有一個輸入條件時,可以這么選取測試用例。(以坐標軸舉例。以紅點表示測試用例)例如當有兩個輸入條件的時候,可以這么選取測試用例。(以紅點表示測試用例)
ps:要測試健壯性(軟體有沒有金剛不壞之身)的時候,可以這么設計測試用例。
選取略小於最小值的無效測試數據(或者略大於最大值的無效測試數據)。
二、等價類劃分
要做到窮盡測試是不可能的,所以在設計測試用例時往往要先劃分等價類再選取「人大代表」。
劃分的子集應該滿足如下因素:
(1)每個子集內部所有的數據都是等價的
(2)子集之間互不相交
(3)所有子集的並集是整個輸入域或輸出域
PS:
(1)【有效等價類】是相對於規格說明合理的、正確的、有意義的輸入數據構成的集合。
(2)【無效等價類】是相對於規格說明不合理的、錯誤的、無意義的輸入數據構成的集合。
小二啊,上一個例子:
如網站注冊用戶名的時候,輸入框要求「用戶名由字母開頭,後跟字母或數字的任意組合,且長度<=8」。
(1)有效的等價類劃分
username = {0<全字母的長度<8}
username = {0<(字母開頭+數字)的長度<8}
(2)無效的等價類劃分
username = {0<全數字的長度<8}
username = {0<(數字開頭+字母)的長度<8}
username = {全字母的長度>8}
username = {全數字的長度>8}
username = {(數字開頭+字母)的長度>8}
username = {0<(字母開頭+數字)的長度>8}
三、因果圖
「因為他們有豐富的經驗,不但懂得現狀,而且明白因果。」
基於因果圖的測試方法要考慮如下問題
(1)規格說明書有哪些原因?
(2)規格說明書有哪些結果?
(3)規格說明書中各種原因之間的關系怎麼樣?
(4)規格說明書中各種結果之間的關系怎麼樣?
(5)規格說明書中原因和結果之間的約束條件怎麼樣?
(6)如何從規格說明書中的原因和結果設計測試用例?
【a】恆等: 若c1為1,則e1也為1。若c1為0,則e1也為0;
【b】非: 若c1是1,則e1是0.若c1為0,則e1是1;
【c】或: 若c1與c2中有一個是1或者兩個都為1,則e1是1。若c1和c2都為0,則e1是0;
【d】與: 當且僅當c1和c2都是1,則e1為1,否則e1為0.