1. 程式人生 > >軟件測試的幾個基本原則

軟件測試的幾個基本原則

其中 排除 多次 排列 參與 基於 所有 業務 相關

我一直認為軟件測試是一件很有原則的工作,這個原則是最重要的,方法都應該在原則指導下進行。軟件測試的基本原則是站在用戶

的角度,對產品進行全面測試,盡早、盡可能多地發現 Bug,並負責跟蹤和分析產品中的問
題,對不足之處提出質疑和改進意見。

軟件零缺陷(Zero-Bug) 是一種理念,足夠好(Good-Enough)是測試的基本原則。為了達到這個足夠好,在軟
件測試過程中,應註意和遵循的一些基本原則,可以概括為以下幾項,我認為適合絕大多數的軟件測試工作了。

1. 所有測試的標準都是建立在用戶需求之上。正如我們所知,軟件測試的目標就是驗
證產品的一致性和確認產品是否滿足客戶的需求,所以測試人員要始終站在用戶的
角度去看問題、去判斷軟件缺陷的影響,系統中最嚴重的錯誤是那些,導致程序無法
滿足用戶需求的缺陷有那些。
2. 軟件測試必須基於 “ 質量第一 ” 的思想去開展各項工作

,當時間和質量沖突時,時
間要服從質量。強烈質量的意識、理念和文化(如零缺陷、足夠好的目標)同樣是
軟件測試工作的基礎。
3. 事先定義好產品的質量標準。有了質量標準,才能依據測試的結果對產品的質量進
行正確的分析和評估,例如,進行性能測試前,應定義好產品性能的相關的各種指
標。同樣,功能及其它測試也應該事先定義好標準,包括測試用例應確定預期輸出結果,如果無法確定測試結果,則無法進行校
驗。
4. 軟件項目一啟動,軟件測試也就是開始,而不是等程序寫完,才開始進行測試。這個觀念現在越來越受重視了,在
代碼完成之前,測試人員要參與需求分析、系統或程序設計的審查工作,而且要準
備測試計劃、測試用例、測試腳本和測試環境,測試計劃可以在需求模型一完成就
開始,詳細的測試用例定義可以在設計模型被確定後開始。應當把“盡早和不斷地
測試”作為測試人員的座右銘。
5. 窮舉測試是不可能的
。甚至一個大小適度的程序,其路徑排列的數量也非常大,因
此,在測試中不可能運行路徑的每一種組合,然而,充分覆蓋程序邏輯,包括業務邏輯、數據流程邏輯等,並確保程
序設計中使用的所有條件是有可能的。
6. 第三方進行測試會更客觀,更有效。程序員應避免測試自己的程序,為達到最佳的
效果,應由第三方來進行測試。測試是帶有 ”挑剔性” 的行為,心理狀態是測試
自己程序的障礙。同時對於需求規格說明的理解產生的錯誤也很難在程序員本人測
試時被發現。 要做出“經得起考驗和測試的產品”。
7. 軟件測試計劃是做好軟件測試工作的前提。所以在進行實際測試之前,應制定良好
的、切實可行的測試計劃並嚴格執行,特別要確定測試策略和測試目標。 有效的測試策略和明確的測試目標。
8. 測試用例是設計出來的,不是寫出來的
,所以要根據測試的目的,采用相應的方法
去設計測試用例,從而提高測試的效率,更多地發現錯誤,提高程序的可靠性。除
了檢查程序是否做了應該做的事,還要看程序是否做了不該做的事;不僅應選用合
理的輸入數據,對於非法的輸入也要設計測試用例進行測試。 要知道好的測試用例真的會有效且事半功倍。
9. 不可將測試用例置之度外,排除隨意性。特別是對於做了修改之後的程序進行重新
測試時,如不嚴格執行測試用例,將有可能忽略由修改錯誤而引起的大量的新錯誤。
所以,回歸測試的關聯性也應引起充分的註意,有相當一部分最終發現的錯誤是在
早期測試結果中遺漏的。 其它所有工作都應該避免隨意性。
10. 對發現錯誤較多的程序段,應進行更深入的測試。一般來說,一段程序中已發現的
錯誤數越多,其中存在的錯誤概率也就越大。越需要深入和多次測試。

在實際的測試中時刻牽記這些基本原則,不僅會讓工作更充分,而且會讓工作越來越輕松,關鍵是有效果。所以讓我們做有“原則性”的測試工作吧!

軟件測試的幾個基本原則