軟件測試的幾個基本原則


  我一直認為軟件測試是一件很有原則的工作,這個原則是最重要的,方法都應該在原則指導下進行。軟件測試的基本原則是站在用戶的角度,對產品進行全面測試,盡早、盡可能多地發現 Bug,並負責跟蹤和分析產品中的問題,對不足之處提出質疑和改進意見。軟件零缺陷(Zero-Bug) 是一種理念,足夠好(Good-Enough)是測試的基本原則。為了達到這個足夠好,在軟件測試過程中,應注意和遵循的一些基本原則,可以概括為以下幾項,我認為適合絕大多數的軟件測試工作了。

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

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


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM