測試與改錯(5)

發表于:2014-12-29來源:uml.org.cn作者:不詳點擊數: 標簽:缺陷管理
我們經??吹?,蜜蜂或者蒼蠅想從玻璃窗中飛出,它們會頂著玻璃折騰幾個小時,卻不曉得從旁邊輕輕松松地飛走。我原以為蜜蜂和蒼蠅長得太小,視野有

  我們經??吹?,蜜蜂或者蒼蠅想從玻璃窗中飛出,它們會頂著玻璃折騰幾個小時,卻不曉得從旁邊輕輕松松地飛走。我原以為蜜蜂和蒼蠅長得太小,視野有限,以致看不見近在咫尺的逃生之窗,所以只好蠻干??墒怯幸惶煲估?,有只麻雀飛進我的房間,它的逃生方式竟然與蜜蜂一模一樣。我用燈光照著那扇打開的窗戶為其引路,并向它打手勢,對它說話,均無濟于事。它是到天亮后才飛走的,這一宿我倆都沒息好。

  (3)找出錯誤的根源。有人問阿凡提:“我肚子痛,應該用什么藥?”阿凡提說:“應該用眼藥水,因為你眼睛不好,吃了臟東西才肚子痛。”

  我們應該運用歸納、推理等方法盡早確定錯誤的根源。

  (4)在改錯之后一定要馬上進行重新測試,以免引入新的錯誤。有人在馬路上撿到錢包后得意忘形,不料自己卻被汽車撞倒。改了一個程序錯誤固然是喜事,但要防止樂極生悲。更加嚴格的要求是:不論原有程序是否絕對正確,只要對此程序作過改動(哪怕是微不足道的),都要進行重新測試。

  7.5 小 結

  優秀的程序員敢于聲稱自己的代碼沒有錯誤,這種自信讓人羨慕不已。一個錯誤自身也許很微小,但是程序存在錯誤這件事很嚴重。能否做好測試與改錯工作,思想認識和辦事態度是最關鍵的。

  程序員應該把測試當成份內之事,不要依賴于外界的“黑盒測試”。“黑盒測試”就象通過提問題來判斷一個人是否是個瘋子,但無法知道他為什么成了瘋子。讓程序員對所有的代碼執行單步跟蹤測試聽起來很費時間,但習慣了你就感覺不到有什么不方便。單步跟蹤測試將使你以后的日子更輕松。

  程序出了錯誤一定要改錯,但是“編寫優質無錯”的程序才是根本的解決之道。在此,我竭力建議大家閱讀Steve Maguire著的《Writing Clean Code : Microsoft Techniques for Developing Bug-free C Programs》(有中文譯本,[Maguire 1993])。我深受此書的教誨,獲益非淺。

原文轉自:http://www.uml.org.cn/Test/200608303.htm

国产97人人超碰caoprom_尤物国产在线一区手机播放_精品国产一区二区三_色天使久久综合给合久久97