2011-03-01 44 views
5

我意識到我確實需要開始使用與單元測試相關的行爲和模式,特別是使用ruby,因爲我可以隨後遷移這些知識到其他語言。有沒有關於如何開始的非常好的例子?我遇到的問題是,對於我正在使用的當前系統並開展工作,似乎開始使用單元測試是不可逾越的。絕對初學者的單元測試 - 我正在使用Ruby

我從來沒有爲操作代碼構建過一個單元測試,只是嘗試使用相同的十五個在線教程來顯示您的ruby的核心類似乎功能正常。我需要知道如何爲我自己的系統構建這些測試以及尋找和測試什麼的心態。

有什麼好的在線教程告訴你如何做更多的事情不僅僅是測試一個assert_true是否爲真,相反是錯誤的?即使他們不是爲了使用紅寶石,我應該閱讀還是繼續閱讀必須閱讀並且必須通過實驗單元測試指南?最好有一個一步一步教程。

像在實際現有的模型和框架中使用這些單元測試以及實際測試什麼的東西?我仍然試圖讓我的頭腦圍繞着測試心態,而且我不斷受到不同元素的影響。沒有人真正地具體說明了你需要用什麼樣的方式來進行單元測試,因爲所有那些有書面指南或者教程的人似乎已經內化了你接近系統的邏輯。

任何幫助將非常感激。

回答

3

從技術上講它的BDD,但我會建議The RSpec Book,因爲它的解釋概念一份好工作,已經擴展教程。本書的第二部分介紹黃瓜,所以它也會教你。

1

真的很容易被誤解,比如像rcov這樣的代碼覆蓋工具和更詳細的工具,比如heckle, flog, flay。這些工具非常棒,它們可以追蹤錯誤,但它們應該是與設計和文檔相關的單元測試的第二位。

我覺得這個概括起來 - 從agile TDD頁面

  • 「編寫單元測試的行爲更是一個比驗證設計的行爲。」
  • 「這也是更多的文件比覈查的行爲」
+2

單元測試不是TDD,TDD不是單元測試。 TDD使用單元測試工具來創建所需結果的規範。單元測試測試了最小的合理可測試單元。正如你所指出的那樣:TDD根本不是一種測試方法,不應該被認爲是這樣。 – 2011-03-01 06:48:00