軟件測試心理學與經濟學 軟件測試培訓
1. 軟件測試一項技術性的工作,但同時也涉及到一些人類心理學和經濟學的重要因素。
2. 錯誤的測試心理:
(1) 軟件測試就是證明軟件沒有錯誤的過程;
(2) 軟件測試就是證明軟件完成了它既定功能的過程;
(3) 軟件測試就是建立"軟件做了其應該做的"信心的過程;
3. 軟件測試的過程是為了通過發現并修正更多的缺陷來增加程序的質量和可靠性。因此,在測試伊始,就應該抱著發現更多的缺陷的目的來設計和執行測試,而并不是簡單的為了證明程序能夠正確運行而進行測試。
4.“軟件測試是為了發現錯誤而執行程序的過程!
5. 人類的行為總是具有高度的目標性,目標的確立有著重要的心理學影響。如果我們為了證明程序能夠正確運行,就會在潛意識中傾向于實現這個目標,就會設計出較少導致程序失效的測試數據;相反,如果我們為了發現程序中的錯誤而進行測試,就會想方設法、處心積慮地去設計出“變態”的測試數據,來實現自己的“陰謀”,而這種陰謀的實現卻恰恰能夠給程序增加更多的價值。
6. 心理學研究表明:人們對于預先知道“無法實現”的工作,表現會很糟糕。因此,將軟件測試定義為“驗證軟件中不存在錯誤的過程”,是無法達到和實現的(程序中不可能不存在缺陷)。
7. 軟件測試更適宜被定義為試圖發現程序中的錯誤的破壞性過程。一個成功的測試用例,通過誘發程序出錯,而對其進行改進和修正。
8. 黑盒測試,又稱為數據驅動或輸入輸出驅動的測試。測試過程中,將程序視為一個黑盒,不關心其內部結構和原理,而是將重點放到發現程序不按其規范正確運行的環境條件上。
9. 為了進行有效的黑盒測試,需要窮盡出所有的可能情況,并為每一種情況進行測試用例的設計,顯然這是無法完成的任務。
10. 由于窮舉所有測試用例是無法實現的,所以:一、我們不可能保證程序種不存在錯誤;二、測試投入的目標應該定位在通過有限的測試用例設計與執行,最大程度上提高發現錯誤的數量,以取得最好的測試效果。
11. 白盒測試又稱為邏輯驅動測試,允許檢查程序的內部結構。這種測試通過對程序邏輯結構進行檢查,從中獲取測試數據。
12. 在白盒測試中的窮舉路徑測試,如同黑和測試中的窮舉輸入測試一樣,不可能實現。
13. 窮舉路徑測試存在的錯誤隱患:
(1) 程序設計本身不符合設計的規范。在這種情況下,即使窮盡了所有的路徑測試,也依舊無法發現這種缺陷。
(2) 程序設計可能缺少某些必須的路徑,不管你怎么測,也都不可能窮盡到未加入到代碼中的路徑,除非你是多啦A夢。
(3) 窮盡路徑測試很可能無法暴露數據敏感的錯誤。
文章來源于領測軟件測試網 http://www.kjueaiud.com/