天天看點

#yyds幹貨盤點# 軟體測試的發展

軟體測試是伴随着軟體技術及應用的發展而發展的,事實上自從軟體出現的時候開始,也就有了軟體測試。在多年的曆程中,軟體測試從一種似乎是無足輕重、少有關注的開發附屬行為逐漸發展成為了一門學科、一個行業,建立了自己的理論、模型、方法、技術、标準、管理體系以及衆多工具,成為了軟體工程領域研究與實踐的一個重要闆塊。

軟體測試的起源來自對程式的調試,這是保證程式能夠運作而不得不做的一件事情。在這個時期,軟體的規模小,複雜程度低,程式員的調試工作基本上也就能夠發現程式中的錯誤并加以解決。

到20世紀50年代,軟體界開始意識到調試對于軟體如何保證預期的實作是不夠的,僅靠程式員來做這項工作缺點很大,開始萌生軟體測試的概念,出現了獨立于程式員的測試人員或組織。但一直到大約60年代末期,都沒有形成軟體測試的清晰定義,更沒有軟體測試相關的理論、方法或技術研究成果,當然也沒有建立軟體測試的标準和規範。軟體測試工作依賴于測試人員的經驗甚至是對錯誤的猜測,而且測試實施的時機很晚,這顯然不能保證測試的覆寫程度和強度,不能在更早的時間發現軟體缺陷,結果是在最終的軟體中依然遺留有問題,同時,解決已發現缺陷的代價也異常高昂。

20世紀70年代軟體測試有了比較大的發展,由于“軟體危機”的爆發,軟體工程的研究與實踐得以興起,在曆經了之前的程式設計和軟體設計階段後,這一時期的軟體開發向工程化、規模化、系列化方向發展,軟體測試必須保證能滿足軟體開發的這些特征。1972年軟體測試領域的先驅人物Bill

Hetzel 在北卡羅來納大學組織的首屆軟體測試會議是一個标志性事件,可以看作是學術界和工業界系統研究軟體測試的開端,1973年,

Hetzel給出了軟體測試的第一個定義,其後其他學者或組織也給出了自己的定義,并展開了充分的讨論,使得軟體測試的内涵得以不斷優化和完善。