4

使用 TDD/BDD 方法开发应用程序时,应该有多精细?特别是关于 Rails 应用程序。

您会单独测试每个字段,然后正确迁移以使其通过吗?那么每个领域都会有自己的迁移?您将实际测试什么以确保该领域是他们的?

我真的很想弄清楚从哪里开始以及如何细化。我开始着手,只是冻结,因为我不知道如何测试每一件小事。

我见过的大多数示例都使用验证作为示例。我知道在那之前写了很多代码,我只是不知道如何测试最基本的东西,比如“应该有一个名字字段”。

任何帮助深表感谢。

谢谢!

4

2 回答 2

1

您是否使用任何用于 TDD/BDD 的工具,例如Cucumber

他们有一些关于在 Rails 中使用 Cucumber 的好信息。

基本上编写您的功能,然后编写一个脚手架以使该功能通过它的测试。当您想向模型添加另一个字段时,首先更新功能,让它失败,然后编写迁移并更新您的视图以使测试通过。

于 2009-11-02T13:45:01.490 回答
1

我不会钻那么深。事实上,我通常不测试我的迁移,而且(通常)测试 getter 和 setter 肯定不值得你花时间。坚持让你了解系统的测试,并表达代码的重要功能需求。

至于从哪里开始:选择一个你知道如何测试的需求——一个没有外部依赖的需求,一个路径绝对清晰的需求。编写测试来描述所需的行为,实现它,并重构代码以消除您在实现过程中可能添加的任何丑陋之处。在您为列表中的一些功能完成此操作后,您可能会发现一些更模糊的功能正在成为焦点,因为您已经制作了它们需要的构建块/依赖项。

一本比AWDRRails Way更详细地介绍测试实践的好书是The RSpec Book,它的测试版以电子形式提供。

于 2009-11-02T15:40:56.740 回答