2011-06-22 99 views
3

我不知道單個程序員在單獨編寫代碼時是否會花時間進行單元測試,功能測試或應用測試驅動開發(TDD)方法。或者,他只是爲了讓它工作而煩惱。當您單獨編寫項目時,您是否執行測試?

我之所以會問這個問題,是因爲進行這些測試會延長整個項目。

謝謝。

+0

我已經編碼了3層的壓縮算法,但我沒有使用過單個測試。詛咒。那是我唯一要說的。 – Erandros

回答

2

無論您是團隊還是獨立開發人員,測試的好處都是一樣的。

因此,神奇的答案是這樣的:這完全取決於你

這兩種情況唯一真正的區別是,當你自己開發時,你不必說服別人寫或不寫測試,你可以簡單地與你自己進行討論。

+0

我認爲這裏的問題是成本與時間。如果我們有一個團隊,我們可以奉獻一名測試工程師。 – Victor

+1

如果您使用TDD,開發人員通常會編寫測試,而不是測試工程師。而且我會重新構建「成本與時間」的評論:你想要做的測試是關於晚點還是早點找bug的成本更高。 – Mathias

3

我發現,如果我不做單元測試,那會延長項目數千倍。我總是想讓功能工作,然後是下一個功能,然後是下一個功能。儘管我已經一遍又一遍地向自己證明這些測試構成了及時完成的​​黃金之路,但我需要有紀律的人才能進行單元測試。

2

我更喜歡做TDD因爲某些模塊的API在開始和寫入UI時沒有定義,而編寫數據模塊的API有時會有點混亂。

所以我傾向於通過編寫測試用例來創建數據模塊API。我也用它來衡量進展。一旦完成。用戶界面完成得相當快,並且由於數據部分已經過測試,因此調試用戶界面的速度要快很多。

當測試用例開發的偏移量較多時,它節省的調試時間是很好的量,並給出了一個舒適的開發流程。

1

這取決於:)

  • 如果是概念 /高科技的,我想學一原型/證明。我通常不選擇TDD,因爲它是一次性的。 (學習測試第三方庫,我試圖集成到我的應用程序是一個例外。)
  • 如果這是我需要維持更長的時間(超過一個月),我會選擇TDD。如果將來會有多人蔘與其中,我肯定會選擇TDD

也就是說,TDD在這裏並不自動暗示出好的apps/design/insert-good-metric。良好/有經驗的程序員編寫好的軟件。通過TDD,他們更有可能變得更好/更快。

相關問題