測試的重要性


紀錄一些關於測試的重要觀念。


1. 不要小看也不要忽略測試的工作,這是維持系統品質重要的一關。

2. 不要只看程式是否做了它該做的事,更要看看程式是否做了它不該做的事
(不要基於程式沒有錯誤的假設來做測試)

3. 不要丟棄這個程式使用過的測試個案
(日後要重測很方便,且有文件可以查是很重要的事情。尤其是流動率高的時候

4. 每個測試個案都必須定義所預期的輸出或結果

5. 設計測試個案時,不合理、不被預期的輸入狀況,與合理、被預期的輸入狀況同樣重要




6. 修正程式錯誤的成本,每經過一個軟體開發階段就會增加10倍



這點感觸非常深刻。
實務上未必有這麼完整的開發流程,常常只有開發者自己兼測試者,而沒有後續的測試團隊,等到產品上線後直接由使用者端回報bug。

系統為了趕著上線,功能做出來沒有時間去做詳細的測試,只能做「假設系統被正常地操作」是沒問題的,就認為沒問題了。
結果到正式上線後,開始有使用者回報錯誤,這時的debug時程會被使用者追殺,甚至會影響整個系統的正常運作,此階段需要付出的成本就非常可怕了。所以系統上線的初期通常也是地獄的開始XD






留言

這個網誌中的熱門文章

API、Method和Library是什麼東西和關係?

《人月神話》簡易心得

新增欄位,該用alter還是create and drop