更新時間:2022-08-15 來源:黑馬程序員 瀏覽量:
IEEE定義的軟件測試非常明確地提出了測試是為了檢驗軟件是否滿足需求,它是一門需要經過設計、開發(fā)和維護等完整階段的過程。
此后,軟件測試便進入了一個全新的時期,形成了各種測試方法、理論與技術,測試工具也開始廣泛使用,慢慢地形成了一個專門學科。
雖然軟件測試得到了長足的發(fā)展,但相比于軟件開發(fā),它的發(fā)展還是相對不足,測試工作幾乎全部是在軟件功能模塊完成或者整個軟件產品完成之后才開始進行,這樣發(fā)現(xiàn)軟件缺陷之后,開發(fā)人員再進行修改,會消耗大量的人力、物力成本。20世紀90年代后興起敏捷模型的軟件開發(fā)模式,促使人們對軟件測試重新進行了思考,更多的人傾向于軟件開發(fā)與軟件測試的融合,即不再是軟件完成之后再進行測試,而是從軟件需求分析階段,測試人員就參與其中,了解整個軟件的需求、設計等,測試人員甚至可以提前開發(fā)測試代碼,這也是我們在敏捷模型中所提到的“開發(fā)未動,測試先行”。軟件開發(fā)與測試融合,雖然兩者的界限變得模糊,但軟件開發(fā)與測試工作的效率都得到了極大的提高,這種工作模式至今依然盛行。
歸結起來,軟件測試的發(fā)展路線如下:
1.最早期:軟甲調試
2.20世紀50年代:專門的軟件測試
3.20世紀80年代:第一次定義→形成專門學科
4.與開發(fā)融合:20世紀90年代
如今,隨著人工智能與大數(shù)據(jù)時代的到來,軟件測試更是受到越來越多的重視,但現(xiàn)在軟件測試工作還依然沿用20世紀的方法、理論與思想成果,并沒有突破性、革命性的進展。未來,隨著軟件開發(fā)模型與技術的發(fā)展,軟件測試的思想與方法勢必也會出現(xiàn)里程碑式的變化,這需要更多熱愛軟件測試的人員積極投入研究。