我一直聽到測試驅動開發是一種不幸的技術名稱,因爲TDD不是測試,而是關於設計。我們能爲TDD想出一個更好的名字嗎?
個人而言,我從來沒有與名稱的問題,僅僅是因爲我一直認爲它更作爲一種編程的規範。我從來沒有遇到這樣的問題,即驗證我符合規範的代碼在類名稱,方法名稱,註釋或屬性中包含「test」一詞。這是我爲了讓測試框架爲我付出沉重代價而遵循的慣例。
我不是最教條我的做法,但我會盡力先寫我的測試中,我經常發現自己啓發,寫一些額外的代碼,然後我嘗試在測試包。我確實傾向於發現,每當我這樣做時,TDD都會從API設計的角度來取代我(儘管我一開始爲它編寫測試,我也不可避免地重構了未經測試的代碼),但重點是我'沒關係,只要我完成了一個關於感興趣的事情的測試工具,就可以不寫。
所以,回到問題。什麼是TDD更好的名字?一個不涉及「測試」這個詞的名字會起什麼作用?
你是問,爲什麼我們不把它叫做「發展帶動下測試「?這是個問題嗎?還是你抱怨說你沒有先寫所有的測試?或者你問在所有代碼之前不寫所有測試是否可行?我無法回答這個問題。 – 2009-08-14 19:23:19