其實在α末期就該寫了,後來在看writing solid code就想說看完在寫,應該會有不同的想法。
掛我的名字的有107個,真的是暴表。舊bug、新、舊需求、規格問題不記,其餘bug我把他分為幾類:
- Unit test沒測到。
這應該是最不允許發生的bug,有很多很明顯的bug,幾乎佔了一半以上,不是字打錯,就是這畫面沒有測到。非常容易找,只要一一核對規格書,這bug就找到了。我想這次較容易發生這種bug的原因,有兩個。
1.沒有一個一個字對仔細,其實這很難控制,有些地方我對了兩輪以上,結果還是有錯。這次改介面的地方實在太多了,唉!一個一個測還是很容易漏掉,或者沒有觀察到的錯誤。
2.全部功能完成後,沒有完整的在回頭重測一遍。這次是做完一部分我就會先測這一部份的功能,最後所有功能完成,沒有回頭重測,就只有跟俊賢交互測試了。造成了兩個結果,部份功能漏作與後面改的影響前面,像在右鍵選單的部份,因為先作右鍵選單,國際指數資料出來後,中間先停住,先作國際指數,再回來作右鍵選單,結果後來發現中間銜接的選單功能,好像很多都漏作了。並且後面做的部份好像改到前面邏輯,造成bug。在中間轉換開發做的不夠細膩,也是形成這些bug的原因。
- 改底層,影響到繼承類別或使用函式。
雖然之前就知道會有這樣的問題,但似乎還是無法避免,大概還是沒有意識到只要變動,就要查所有的引用類別,這會花許多額外的時間,但似乎沒有更好的作法。
- 未改完整,下一個測試circle測到上個circle改出的bug。
這次發生了幾次,為了解一個bug,但是卻產生更多的bug的問題,多是畫面顯示的問題還有繼承引用的問題。尤其在那段circle結束前當天改的更容易發生,因為沒有更仔細的測試就放上去了,結果第二天就發現沒改好。Bug就又多了幾條。在改畫面顯示時應該多注意,放大縮小,重劃,symbol update等問題。
其他比較特別就是post message的那個問題吧!好像重點就只有改完後,作更仔細的測試再放上去這像要點XD。
留言