這個問題是較近北京軟件開發公司的一個程序員的問我的,它不可避免地引起瞭我的好奇心。我開門見山,答案是肯定的–軟件測試是必要的,必須是,永遠是。但爲瞭更好的回答他,讓我們來分析一下反對者的意見:“如果我們隻會開發軟件的服務,我們就不需要測試。”
讓我們來看看是否有這個東西的有效性。毫無疑問,如果軟件開發的時候沒有缺陷的産(chǎn)生,就不會有後續測(cè)試的需要。但在一個世界裏,即使是簡單的移動應用程序在你的智能手機死機時,我們怎麽可能指望軟件開發者應對更複雜的應用程序産(chǎn)生錯誤的代碼(例如,依賴軟件的各種操作系統,語言,或網絡)?所以除非你知道軟件開發商藐視這個世界的法則。
現在,我們已經有瞭(le)軟件測(cè)試的需要,讓我們從這個問答後幾個值得注意的評論一下:
測(cè)試是必要的–軟件是人寫出來的;人是不完美的,會犯錯。因此,測(cè)試是必要的因爲它帶來平衡與視角。你會跳上飛機,飛行員控制軟件就有很大風險:充斥著(zhe)死亡的間歇藍屏?
測(cè)試是一個廚師品嘗(cháng)他的烹饪食物的同時它同樣的原因,有必要測(cè)試。換句話說,軟件開發生命周期的要求較低的少量的單元測(cè)試和系統測(cè)試夾。
測(cè)試是必要的–因爲無論你有多好,你不能想到的一切。即使你能想到的事,你肯定不需要在真實環(huán)境中優化你的代碼,無縫(fèng)工作的手段,在排列和組合的相關因素可以削弱你的編(biān)碼效率。
軟件測試是軟件質量至關重要的一步,即使軟件測試人員沒有參(cān)與實際的編(biān)碼。事實上,軟件測試人員如此密切地與開發商合作,開發商是因爲更好的和程序員合作;再次,測(cè)試人員将平衡高質量的軟件需要。我不是說一個比另一個更重要,而是它的測(cè)試–發展之間都需要一個團隊(duì)的努力,都是很重要的。