2010-04-23 31 views
5

我正在尋找特定於Rails的TDD資源。帶導軌的測試驅動開發(TDD)

我見過Rails指南:The Basics of Creating a Rails Plugin這真的激發了我對這個主題的興趣。

我有Rails的敏捷開發書,我看到那裏有一些測試相關的信息。但是,似乎作者會帶領您完成構建應用程序的步驟,然後再添加測試。這不是真的測試驅動發展。理想情況下,我想要一本關於這方面的書,但如果這樣一本書不存在,其他教程或文章的集合將會很不錯。

事情,我想學習:

  • 主要目標:最佳實踐
  • 單元測試
  • 如何可能使用替代現有的發展數據利用燈具
    • 夾具
      • 這裏的社區標準是什麼?
      • 測試與會話數據
        • 用戶在
        • 用戶登錄的插件
    • 寫作考試可以訪問URL /富/酒吧
  • 的變化進行測試數據
    • 作者更新帖子
    • 產品狀態更改爲回退訂單
    • 用戶購買產品(行爲?)
      • 用戶在
      • 用戶已登錄了有效地址和有效的信用卡
      • 訂單記錄由
      • 信用卡的交易記錄更新
      • 將電子郵件發送到用戶
  • 發送郵件的測試成功
  • 測試AJAX
    • 可能測試一般jQuery的功能(接口元素等)
  • RSpec的
    • 沒有RSpec的有一個Rails應用程序
  • 測試的未來是什麼地方
    • 測試在哪裏?什麼東西正在出路?
    • Rails 3中將使用哪些模式?

感謝您的幫助!

+0

看看這個類似的帖子中回答這個問題:http://stackoverflow.com/questions/1386562/how-to-get-started-on-tdd-with-ruby-on-rails/6243865#6243865 – sivabudh 2011-06-05 15:34:10

回答

2

The RSpec Book: Behaviour Driven Development with RSpec, Cucumber, and Friends。專注於BDD而不是TDD,但這是RSpec和黃瓜的重點。不完全針對Rails,但有幾章專門介紹它。寫得很好,並且是最新的(儘管還在測試階段)。

+0

BDD與TDD相比?他們的觀點是否表明一方比另一方好?或者他們只是覆蓋不同的東西? – 2010-04-24 00:47:17

+0

我也會提出這個建議 - 真的是Rails世界的藝術狀態。 BDD和TDD密切相關,每個都從不同的角度接近相同的問題。 rSpec實際上是一個建立在DSL上的測試框架,可以產生人類可讀的「意圖」。 – 2010-04-24 00:52:42

+0

這是一個很好的描述。我也會說,TDD從內到外的角度進行測試,即。編碼人員的觀點,而BDD則從內部視角進行測試 - 利益相關者或客戶的觀點。更好的BDD工具的輸出接近可交付給客戶的需求規格。 – zetetic 2010-04-24 01:05:21

1

這是一個老問題,但我將增加邁克爾哈特爾的Learn Rails by Example讓用戶通過TDD,並涵蓋了原始問題中提到的大多數要點。

我還會補充一點,Everyday Rails Testing with RSpec是一筆很好的購買,尤其是因爲作者在客戶購買該書後會免費提供更新,並且他計劃在Rails 4發佈後再次進行更新。