瀑布模型的最後開發人員會亂作一團,而縮短開發周期是一種減少問題的方案
測試驅動開發(tdd)是一種增量式軟體開發技術。簡單說明及在沒有失敗的單測前提下不寫產品**。測試要小且自動化。
tdd操作步驟
增加乙個小測試。
執行所有測試並期待新的測試失敗,也可能壓根編譯不過。
為了讓測試通過做一些小改動。
執行測試並期待測試通過。
重構,移除重複並改進**的表達方式。
針對嵌入式開發
嵌入式開發者最常用的藉口
就是對於硬體的依賴。原則上對於硬體的依賴和對資料庫的依賴看起來沒什麼兩樣。
unitycpputest
四階段模式
模組:乙個完備的部分,有明確定義的介面,實現方式為adt抽象資料型別
單一例項模型:選用靜態的只在.c檔案中可見的變數,訪問方法是通過.h中間的介面函式
多例項模型:typedef struct circularbufferstruct *circularbuffer
在標頭檔案宣告,資料成員的定義放在.c中
1.tdd建立c模組需要用到的檔案有:
2.寫乙個測試列表
報酬遞減原則:一旦寫下幾個測試,其他的會很容易想到。當進展很慢時,說明已經到達報酬遞減的邊緣,這是乙個停止寫測試列表轉而測試驅動設計的好時機。3.寫第乙個測試
通過編寫leddriver
測試流程來體現如何實際操作tdd。
建立測試檔案,放在與產品不同的目錄下。
構建並編譯執行測試,得到正確的輸出。test_group->test_case
讓測試用例檢查真正有用的東西。
4.先測試介面再測試內部實現
關注介面,意味著從外向內開發**。測試作為介面的首個使用者,從呼叫者的角度給出了開發**的使用方式。案例總結:先增加乙個測試用例,然後增加標頭檔案介面宣告,其次增加.c檔案的函式骨架,最終進行函式骨架內容填充。
5.增量式前進
dtsttcpw:先仿冒再建造
保持小而專注的測試
綠了之後即重構
6.測試驅動開發者的狀態機
7.測試要做到first
當你發現自己已經在乙個坑里,就不要再挖了吧!### 5.嵌入式系統的tdd策略
### 6.是的但是
嵌入式驅動開發的要點
在linux作業系統下有3類主要的裝置檔案型別 塊裝置 字元裝置和網路裝置。這種分類方法可以將控制輸入 輸出裝置的驅動程式與其他作業系統軟體分離開來。字元裝置與塊裝置的主要區別是 在對字元裝置發出讀 寫請求時,實際的硬體i o一般緊接著發生。塊裝置則不然,它利用一塊系統記憶體作為緩衝區,若使用者程序...
《UML OOPC嵌入式C語言開發精講》讀書筆記
物件 操作 operation 泛化 generalization 結合 association 利用上述的基本元素,可以組成各式各樣的軟體模型。較高層階的元素 用例圖 use case 軟體設計模式 design pattern 群組包裹 package 表現結構 架構 性需求,主要包括part,...
嵌入式C開發
將n左移m位 int byte to left move int n int m if n 1 if n 1 return ret 將n右移m位 int byte to right move int n int m if n 1 if n 1 ret n return ret 閒著無聊,自己寫了兩個...