關于時間估算與測試的一些看法

之前在Chrome 插件 030RateViewer 0.02版更新中提到通過這次功能的追加而感受到測試以及測試case的重要性。

其實關于測試這個話題,早就有不少人寫過相關的文章了。我自然也沒少看,可就是沒放在心上也不當回事。所以這次便吃到了苦頭。

這是因為在這個 030RateViewer 插件的開發過程中,有1/4的時間是浪費無效的測試上的。而造成這一結果的,就是因為實現沒有事先寫好測試case(從而最終導致我晚睡了一個半小時)。由這一慘痛的教訓,讓我理解到了測試case的重要性。

說來慚愧,其實自己挖的一些坑從來就沒認真寫過測試case或者說就從沒寫過。一是因為做的東西大都以前端為主,前端的最大特點就是所見即所得。每次只要F5一下,就能看到效果,邊看邊改(而在用了webpack之后連F5都不需要按了)。也就沒了寫測試case的習慣。二來則是,大學時學過一陣子Java,看到要寫什么測試case就很頭疼(雖然有JUnit)??傊褪遣粣蹖慶ase,基本就是腳踩西瓜皮,想到什么測什么。

所以這一次在造數據測試的時候由于case設置的問題,導致沒有出現預期的效果。因此造成在排查過程中在程序邏輯上花費了大量時間,而實際上程序邏輯并沒有問題。其次,由于沒有落筆,在這次的測試過程中,分支測試就變得模糊不清,測到哪了也不知道,造成返工重測浪費了時間。雖然是勉勉強強弄完了,不過事后想來,測試的面很可能還不全面,這也是不寫測試case所造成的。

再有一點就是時間估算的問題。其實對于這一次要添加的功能,大致是心中有數的。所以最初估算大概一個下午左右的時間就能完成(14點~18點,包括查閱文檔、功能實現以及測試),而實際上我是在晚上的22點左右才完成的。除去當中吃飯以及發呆的時間,大約在6個小時左右。正好印證了以前看過的一句話程序員的實際時間 = 程序員自己估算的時間 * 1.5

現在想來,這1.5倍的時間里,就是因為該做的事情沒做好而浪費的。因此在今后自己的一些項目中,還是應該認真寫好測試case(邏輯特別簡單的除外),而不去偷這個懶。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 1.測試與軟件模型 軟件開發生命周期模型指的是軟件開發全過程、活動和任務的結構性框架。軟件項目的開發包括:需求、設...
    Mr希靈閱讀 21,987評論 7 278
  • 1.測試與軟件模型 軟件開發生命周期模型指的是軟件開發全過程、活動和任務的結構性框架。軟件項目的開發包括:需求、設...
    宇文臭臭閱讀 6,751評論 5 100
  • 文章來自:http://blog.csdn.net/mj813/article/details/52451355 ...
    好大一只鵬閱讀 9,215評論 2 126
  • 昨夜星辰,奔走風里, 萬年之約,誰可明了, 黃河洶濤,珠山封地, 一縷清袖,拂手日月, 當明此志,作可言心, 唯一...
    素耕閱讀 226評論 0 0
  • 今天開發遇到一個問題,實際情況: 在一個頁面有多個UITextField,有的是進行跳轉控制器,有的是直接彈出輸入...
    ___1o_8o閱讀 305評論 0 0