廣義的軟件測試和檢驗包括了軟件生產全過程的測試,包括對用戶需求、概要設計的測試,例如產品是否符合用戶需求,是否符合用戶的使用習慣;而不僅僅是一些人認為的從代碼階段才開始進行測試。所以,需求指標等等都需要進行檢驗,以確保在各個環節上產品質量都有一個體系作保證,俗稱“ 一步三回頭”。如同制造業企業有專門的質量檢驗部門,需要在各個工序和階段使用各種手段、按照規格進行檢驗,這些都是發現問題的過程,正是這些手段保證了不合格的產品被降級使用,或者根本不能轉到下一道工序。
鄭人杰教授說:“我們還發現,一個產品是否在市場上成功,還和產品最開始的市場定位、用戶需求分析相關。任何一個環節出現問題,都會嚴重損害整個產品質量。所以,我們談軟件測試,應該在更高的高度認識這個問題。我們是在討論如何在整個產品開發周期控制和保證產品的質量!
在產品開發過程中每個環節都要采取相關的檢測、控制手段(QC),這是軟件檢測例行的工作。檢測管理負責人需要回答下列問題:軟件測試人員所采用的檢測手段是否充分、步驟是否合理、是否必要和高效、檢驗人員技術是否達標,質量管理者最終要向企業最高管理者負責,這保證了企業的測試手段是充分必要的,這就是我們經常說的質量保證(QA)。
第三方評測和軟件測試的區別
可以看到,軟件測試是在企業內部的質量控制和保證體系,而不是第三方軟件評測。
評測是公正的機構對軟件產品功能和性能等的證實,為了評價產品功能而測試,目的不是為了發現和定位軟件內部的問題,對軟件進行壓力考驗。鄭人杰教授認為,我們不能把軟件企業的質量控制寄托在成品的一次評審上面。
而軟件測試正是為了檢驗開發過程中的錯誤而檢測,它可能延續到用戶購買試用,或者買軟件之后,用戶使用過程中發現問題以后反饋到開發商,這些都屬于軟件測試范疇,由此可見它與評測的區別。
第一,在代碼完成后,就對單元進行測試,然后有集成測試、驗收測試等等,相當于對零件、部件和整機都分別進行檢測。
第二種方法是,在概要設計、詳細設計和編碼每個步驟都要進行檢測。盡量把問題及時發現、及時消滅。
如果問題不能及時被發現,這些隱含的問題也被帶到下一個工序,正確的設計被編碼,錯誤的設計也同時被編碼。
開發人員的一個建議是:在工作的每個步驟都要考慮測試,千萬不要認為,反正最后有人測,最后有人修正,形象地說,病情嚴重再去醫院就晚了。不斷地意識到可能存在的問題,及時發現。自始至終開發人員都要有這個觀念,才能成為成熟的軟件工程師。
目前,作為計算機本科學生,可能沒有選修軟件測試課程,這樣容易造成從業人員對于軟件測試問題沒有足夠重視,或者沒有足夠的背景知識。但是由于IT技術發展迅猛,不能指望學校課程能夠提供學生畢業以后五年十年的勞動技能。在軟件測試、質量控制方面同樣需要各方面人的關注,特別是企業界的關注。
文章來源于領測軟件測試網 http://www.kjueaiud.com/