資料介紹
要點
1.為什么你會遇上這些bug?因為它們是你放的。
2.在TDD(測試驅(qū)動的開發(fā))中,你會在一個嚴格的反饋循環(huán)中,開發(fā)測試與生產(chǎn)代碼。
3.TDD可能有助于避免惱人的Zune bug。
4.目標硬件瓶頸有多種形式,你可以在嚴格的TDD反饋循環(huán)中,用TDD來避開瓶頸。
5.TDD幫助你確保自己的代碼如期望那樣運行。但如果不是這樣,你該如何建立一個可靠的系統(tǒng)?
6.TDD快速地發(fā)現(xiàn)小的和大的邏輯錯誤,防止出現(xiàn)bug,使最終得到較少的bug。
我們的工作方式都是編寫代碼,然后努力讓它運行起來。先建立,然后改錯。測試是以后的事,即寫完代碼后才要做的事。在不可預期的調(diào)試工作上,大概要花掉我們一半的時間。在日程表上,調(diào)試工作都穿著測試與集成的外衣。它是風險與不確定性的一個來源。修正了一個bug可能會產(chǎn)生另一個bug,有時甚至是一連串的bug。
保持調(diào)試的統(tǒng)計有助于預測要花多少時間才能消除bug。你要度量和管理bug??辞€的拐點,拐點表示了趨勢,告訴你最后修正的bug要比產(chǎn)生的多。拐點表示的是已經(jīng)做的事,但你永遠不知道是否在代碼的某個陰暗角落還躲藏著其它的致命bug。
可制造性設計的一個方面是確定為什么你會有這些bug。答案很簡單:錯誤是我們放進去的。這就是我們的工作方式。在開發(fā)以后的測試時,就會發(fā)現(xiàn)問題(圖1和參考文獻1)。我們在開發(fā)時會制造錯誤,測試的工作就是找到這些問題。只要仔細地測試,就會發(fā)現(xiàn)錯誤。開發(fā)后的測試工作意味著必須找到、修復和管理大量的錯誤。

圖1,在開發(fā)以后做測試時,會發(fā)現(xiàn)缺陷
這種調(diào)試居后的編程程序是當今最常見的編程方式。先寫代碼,再調(diào)試它。調(diào)試居后的編程方式有風險。人都會犯錯誤。你既不能確定bug將在何時現(xiàn)身,也不能確定會花多長時間才能發(fā)現(xiàn)它們(圖2)。

圖2,人都會犯錯誤。你無法確定bug何時出現(xiàn),以及要花多少時間才能找到它們
當發(fā)現(xiàn)一個bug的時間(TD)增加時,尋找bug根源的時間(TFIND)也會增加,通常增加得更多。如果從錯誤的引入到發(fā)現(xiàn)要花數(shù)小時、數(shù)天、數(shù)周,甚至數(shù)月時間,你已忘掉了當時的背景,必須開始做bug大掃蕩。當你在開發(fā)周期以外發(fā)現(xiàn)缺陷時,就必須管理bug。對于有些bug,發(fā)現(xiàn)的時間不會影響修復的時間(TFIX),但有些代碼的運行也可能依賴于bug,修改這些bug會造成其它bug。
短周期以及主動的測試自動化可節(jié)省時間和工作量。這時,你再不需要重復繁重而易錯的手工測試。有了測試自動化,重復測試幾乎不會增加額外工作量。測試自動化快速地探測出副作用,避免了對調(diào)試事務的需求。
1.為什么你會遇上這些bug?因為它們是你放的。
2.在TDD(測試驅(qū)動的開發(fā))中,你會在一個嚴格的反饋循環(huán)中,開發(fā)測試與生產(chǎn)代碼。
3.TDD可能有助于避免惱人的Zune bug。
4.目標硬件瓶頸有多種形式,你可以在嚴格的TDD反饋循環(huán)中,用TDD來避開瓶頸。
5.TDD幫助你確保自己的代碼如期望那樣運行。但如果不是這樣,你該如何建立一個可靠的系統(tǒng)?
6.TDD快速地發(fā)現(xiàn)小的和大的邏輯錯誤,防止出現(xiàn)bug,使最終得到較少的bug。
我們的工作方式都是編寫代碼,然后努力讓它運行起來。先建立,然后改錯。測試是以后的事,即寫完代碼后才要做的事。在不可預期的調(diào)試工作上,大概要花掉我們一半的時間。在日程表上,調(diào)試工作都穿著測試與集成的外衣。它是風險與不確定性的一個來源。修正了一個bug可能會產(chǎn)生另一個bug,有時甚至是一連串的bug。
保持調(diào)試的統(tǒng)計有助于預測要花多少時間才能消除bug。你要度量和管理bug??辞€的拐點,拐點表示了趨勢,告訴你最后修正的bug要比產(chǎn)生的多。拐點表示的是已經(jīng)做的事,但你永遠不知道是否在代碼的某個陰暗角落還躲藏著其它的致命bug。
可制造性設計的一個方面是確定為什么你會有這些bug。答案很簡單:錯誤是我們放進去的。這就是我們的工作方式。在開發(fā)以后的測試時,就會發(fā)現(xiàn)問題(圖1和參考文獻1)。我們在開發(fā)時會制造錯誤,測試的工作就是找到這些問題。只要仔細地測試,就會發(fā)現(xiàn)錯誤。開發(fā)后的測試工作意味著必須找到、修復和管理大量的錯誤。

圖1,在開發(fā)以后做測試時,會發(fā)現(xiàn)缺陷
這種調(diào)試居后的編程程序是當今最常見的編程方式。先寫代碼,再調(diào)試它。調(diào)試居后的編程方式有風險。人都會犯錯誤。你既不能確定bug將在何時現(xiàn)身,也不能確定會花多長時間才能發(fā)現(xiàn)它們(圖2)。

圖2,人都會犯錯誤。你無法確定bug何時出現(xiàn),以及要花多少時間才能找到它們
當發(fā)現(xiàn)一個bug的時間(TD)增加時,尋找bug根源的時間(TFIND)也會增加,通常增加得更多。如果從錯誤的引入到發(fā)現(xiàn)要花數(shù)小時、數(shù)天、數(shù)周,甚至數(shù)月時間,你已忘掉了當時的背景,必須開始做bug大掃蕩。當你在開發(fā)周期以外發(fā)現(xiàn)缺陷時,就必須管理bug。對于有些bug,發(fā)現(xiàn)的時間不會影響修復的時間(TFIX),但有些代碼的運行也可能依賴于bug,修改這些bug會造成其它bug。
短周期以及主動的測試自動化可節(jié)省時間和工作量。這時,你再不需要重復繁重而易錯的手工測試。有了測試自動化,重復測試幾乎不會增加額外工作量。測試自動化快速地探測出副作用,避免了對調(diào)試事務的需求。
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- 嵌入式為什么選擇C語言作為開發(fā)語言?
- 嵌入式開發(fā)為什么選擇C語言作為開發(fā)語言?
- 什么是嵌入式開發(fā)?為什么用C語言作為開發(fā)語言?
- 嵌入式linux c語言,嵌入式LinuxC語言開發(fā)工具.pdf
- 嵌入式軟件之c語言編碼規(guī)范 29次下載
- 嵌入式底層開發(fā)為什么選擇C語言
- 嵌入式開發(fā)語言-C語言編程
- 嵌入式C語言-文件操用
- 嵌入式外中斷c語言代碼
- 嵌入式Linux與物聯(lián)網(wǎng)軟件開發(fā)C語言內(nèi)核深度解析書籍的介紹
- C語言開發(fā)DSP嵌入式系統(tǒng)解析 1次下載
- 基于仿真的嵌入式C語言軟件覆蓋測試分析 0次下載
- 嵌入式c語言編程(由淺入深) 0次下載
- 如何用C語言開發(fā)DS嵌入式系統(tǒng)
- 如何用C 語言開發(fā)DSP 嵌入式系統(tǒng)
- C語言是否會阻礙嵌入式的發(fā)展? 252次閱讀
- 聊一聊嵌入式C語言 1.2k次閱讀
- 嵌入式開發(fā)常見的C語言技巧與方法分享 2.2k次閱讀
- 用C語言構(gòu)建高效的嵌入式程序 1.2k次閱讀
- 如何使用MAXQ串行驅(qū)動器開發(fā)應用 1.5k次閱讀
- C語言是怎么面向?qū)ο缶幊?/a> 2.6k次閱讀
- 嵌入式C語言知識點總結(jié) 3.4k次閱讀
- ?為什么嵌入式開發(fā)要選擇C語言? 1.6k次閱讀
- 學習嵌入式要先分清C語言和C++的區(qū)別 8k次閱讀
- 關于嵌入式C語言指針的解析 1.5k次閱讀
- 嵌入式系統(tǒng)C語言編程實戰(zhàn)教程合集 1w次閱讀
- C語言里如何編寫精確的微量延時 2k次閱讀
- Java開發(fā)員應該知道的十種測試框架庫 3.2k次閱讀
- 嵌入式C實現(xiàn)延時程序的不同變量的區(qū)別 幾種Linux嵌入式開發(fā)環(huán)境的簡單介紹 2.2k次閱讀
- 嵌入式Linux開發(fā)之C語言學習秘訣 1.4w次閱讀
下載排行
本周
- 1冷柜-電氣控制系統(tǒng)講解
- 13.68 MB | 4次下載 | 10 積分
- 2安川A1000變頻器中文版說明書
- 20.16 MB | 3次下載 | 3 積分
- 3直流電路的組成和基本定律
- 1.67 MB | 2次下載 | 免費
- 4丹佛斯2800系列變頻器說明書
- 8.00 MB | 1次下載 | 5 積分
- 5PC8011同步開關型降壓3.5A單節(jié)鋰電池充電管理電路技術(shù)手冊
- 0.74 MB | 1次下載 | 免費
- 6ES7243E+ES8311音頻錄制與播放電路資料
- 0.06 MB | 1次下載 | 5 積分
- 7SDM02 激光測距模塊產(chǎn)品手冊
- 0.43 MB | 1次下載 | 免費
- 8SDFM 激光測距模塊模組手冊
- 0.54 MB | 1次下載 | 免費
本月
- 1CH341編程器軟件NeoProgrammer_2.2.0.10
- 20.47 MB | 170次下載 | 1 積分
- 22025智能家居傳感器市場分析及創(chuàng)新應用
- 3.11 MB | 43次下載 | 免費
- 3RV1126B系列開發(fā)板產(chǎn)品資料
- 4.19 MB | 18次下載 | 免費
- 4CH341編程軟件下載
- 2.50 MB | 16次下載 | 5 積分
- 5全志系列-米爾基于T153核心板開發(fā)板 四核異構(gòu)、3路千兆網(wǎng),賦能多元化工業(yè)場景
- 3.05 MB | 12次下載 | 免費
- 6【開源】60余套STM32單片機、嵌入式Linux、物聯(lián)網(wǎng)、人工智能項目案例及入門學習資源包
- 10.55 MB | 8次下載 | 免費
- 7冷柜-電氣控制系統(tǒng)講解
- 13.68 MB | 4次下載 | 10 積分
- 8特斯拉MODEL S車載充電機主電路回路原理圖
- 0.81 MB | 4次下載 | 3 積分
總榜
- 1matlab軟件下載入口
- 未知 | 935137次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設計
- 1.48MB | 420064次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233094次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費下載
- 340992 | 191448次下載 | 10 積分
- 5十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183356次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81604次下載 | 10 積分
- 7Keil工具MDK-Arm免費下載
- 0.02 MB | 73824次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65991次下載 | 10 積分
電子發(fā)燒友App





創(chuàng)作
發(fā)文章
發(fā)帖
提問
發(fā)資料
發(fā)視頻
上傳資料賺積分
評論