Ruby on Rails中的TDD?

时间:2010-08-03 19:02:24

标签: ruby-on-rails tdd

我想知道如何在Rails中完成TDD。

以下是我写下的步骤:

  1. 为数据库表创建迁移和模型
  2. 添加与模型的关联
  3. 为模型编写单元测试并运行并查看它们失败
  4. 为模型添加验证
  5. 运行测试并看到它们通过,如果没有,编辑代码直到它们通过
  6. 创建路由,控制器和视图(使用模型)
  7. 编写功能测试
  8. 运行测试并看到它们失败
  9. 编辑代码并查看传递
  10. 编写集成测试
  11. 我以前从未做过TDD。

    这就是我的想法,但我想先和你们一起检查。

    我确定这不是很“正确”,而且我错过了一些东西,并且事情的顺序不正确。

    如果某些内容不符合最佳做法,您是否可以更正以上列表。

    分享您的经验!

2 个答案:

答案 0 :(得分:1)

如果认为存在一些误解(或者我误解了吗?)。 TDD并不意味着“首先编写所有代码,然后编写所有测试”。就像你的应用程序逐渐增长一样,测试随之增长。

这可能是获得一些实际例子的好地方:
http://andrzejonsoftware.blogspot.com/2007/05/15-tdd-steps-to-create-rails.html

发表评论
所以我应该在创建模型和迁移之前创建测试吗?
见定义:http://en.wikipedia.org/wiki/Test-driven_development
测试驱动开发(TDD)是一种依赖于非常短的开发周期重复的软件开发技术:首先,开发人员编写一个失败的自动化测试用例,定义所需的改进或新功能,然后生成代码通过该测试并最终将新代码重构为可接受的标准。

虽然,我个人认为在首次测试之前创建应用程序屠体没有任何问题。更重要的是非常短的开发周期。您不需要整天编码并在第二天进行测试。你同时做两件事。

答案 1 :(得分:0)

我自己在学习Rails,并努力掌握TDD。我找到了关于我正在考虑购买的主题的截屏视频:https://peepcode.com/products/test-first-development