1. 程式人生 > >關於軟體測試的幾點筆記

關於軟體測試的幾點筆記

最開始,軟體開發和軟體測試分開。程式設計師不大情願承認自己的程式碼需要專門的測試過程。

隨後,隨著軟體危機的出現,軟體工程實踐中強調了軟體測試的重要性。軟體測試整合到軟體工程的過程模型中。這時的測試,主要是功能測試和整合測試。

隨後,隨著軟體行業日益發展,軟體演化的需求日益強烈。一方面,在軟體開發和維護過程中,需求的變動極大地影響了軟體產品的變更。傳統的軟體開發過程模型,比如瀑布模型缺乏演化能力。因此,後續提出了大量支援迭代的開發模型,包括極限程式設計和敏捷程式設計等等。軟體測試也被整合到新的開發模型,出現了測試驅動的開發,以及測試先於編碼的開發。

此外,使用者對於軟體產品要求滿足使用者的功能需求以外,對於效能(使用者體驗)和安全性方面的要求也日益強烈。因此,軟體測試中,除了功能測試和整合測試以外,對於效能和安全性方面的測試需求也日益緊迫。與傳統的測試需求有所不同的是,效能和安全性方面的目標更具有統計性的特點。因此,新的測試過程需要考慮人類心理學、概率與統計、運籌學、根據資料分析實時調整等等方面。

參考:
[1] Scott Barber. Testing and Tester Evolution. http://www.perftestplus.com/resources/Evolution_ppt.pdf.