軟體測試行業趨勢分析和思考
4.1 軟體測試的概述
軟體測試(英語:software testing),描述一種用來促進鑑定軟體的正確性、完整性、安全性和質量的過程。 換句話說,軟體測試是一種實際輸出與預期輸出間的稽核或者比較過程[4]。
不管是傳統企業還是IT企業,都會有這樣的一崗位,叫QC(QUALITY CONTROL的縮寫,中文“質量控制”) [5],專門負責品質控制的。在製造企業裡面是對具體的物品進行 相應的質量檢測。
不管是實物工業生產還是軟體工業生產,最終的目的都是將產品交付給相應的使用人或者使用場景,使產品穩定的發揮其作用。那麼既然存在交接,就必然存在驗收。而關於產品的問題的發現,從生產方來說,最好是在內部就能消化和解決,而不是到投放市場之後由使用者來發現,那樣會對產品和企業形象都是很大的損害。所以每個企業都需要這樣一個角色,用來做質量稽核和把關。
在傳統實物生產工業,產品質量控制主要劃分為4個階段 [5]:
- 進料控制(Incoming Quality Control縮寫為IQC)
- 過程質量控制(In Process Quality Control縮寫為IPQC)
- 最終檢查驗證(Final Quality Control縮寫為FQC)
- 出貨質量控制(Outgoing Quality Control縮寫為OQC)
同樣在軟體工業,特別是目前外包或者眾包的協作模式逐漸興起,軟體工業也逐漸像實物工業一樣形成了所謂的供應鏈,也一樣產生了如傳統工業的品質控制崗位。
- 作為甲包的驗收測試
- 本公司軟體流程優化,和小版本迭代測試
- 本公司階段釋出版測試
- 交付下游企業的交付測試
總之,軟體測試是在軟體工程裡面交付可靠軟體的必要步驟。具體有有興趣的可以檢視軟體工程相關書藉。但是檢視這些的時候,請只看軟體測試的定義及在軟體工程中所扮演的角色部分,後面的具體操作手段可以忽略,因為隨著近些年網際網路和移動網際網路的掘起,很多傳統的軟體工程組織方式和理念已經嚴重落伍,已經逐漸被行業給淘汰,作為軟體工程中的一個環節,軟體測試的手段也發生了巨大變化,這個在後面會談到的。
[4] | 百度百科.'軟體測試'詞條 |
[5] | (1, 2) 百度百科.‘QC’詞條 |