2010-04-23 64 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发布后再次进行更新。