單元測試的重要性一例

  早幾天產品上線,發現了一個bug,而這個bug以前是不存在的,也就是說是我修改了另外一個功能的時候致使了原來正常的一個功能出現了問題。這個bug的 緣由很簡單,我有一個對象,在頁面上會用到,而我如今須要把這個對象存到數據庫,裏面有一些信息是不須要的,爲了不存入過多的東西到數據庫,我在存以前 就清空了這個對象裏面的一些數據。我忘記了我是在操做同一個對象,個人這個清除操做同時影響到了這個對象在頁面上的展現,其實這個問題不是技術問題,也不 是能力問題,只是由於人都會有一些失誤或是不可能時時刻刻都保持細心。那麼咱們要怎麼樣去規避這樣的問題。
     若是沒有單元測試,要規避這個問題,我想必需從如下幾個方面着手:
     1. code review,若是有另外一我的去review你的代碼,那麼發現這種問題的機率會變大,可是以個人經驗,review的人一般不會太仔細去看別人的代碼,通常只能發現一些很明顯的問題。
     2. 增強迴歸測試,這也是有人的因素在裏面的,一般迴歸測試的時候測試人員關心的主要是你修改的功能,其它的功能即便有問題他們也可能不會注意到,很容易被忽略過去,若是有自動化測試可能會好一點。
    上面的方法都帶着人的主觀因素在裏面,若是能在一開始寫好相應的單元測試,一旦新的修改影響了舊有功能,那麼測試必定跑不過,那麼很容易就找出問題來了, 不過這裏又有另外一個問題,單元測試真的不是那麼好寫的,對開發人員的要求特別高,不過不去試着寫就永遠寫不出好的代碼來,爲了不這些bug,咱們也應該 努力開始寫好單元測試。html

本文轉自:http://www.spasvo.com/news/html/20131226150844.html數據庫

相關文章
相關標籤/搜索