3

我刚开始在 Rails 应用程序中使用 BDD,但我不确定最佳实践和工作流程是什么?还有哪些我真正需要的东西来测试我的项目,例如步骤定义、控制器、模型和视图?我需要测试所有这些吗?

4

3 回答 3

3

我通常认为 Cucumber 是一种对您的应用程序进行集成测试的方法。结合 Webrat,您可以很好地测试用户工作流程、视图等。对于单元测试,您需要降低到较低级别并仅使用 rspec 测试您的模型。您可能还想对控制器进行一些功能测试,我可能也不会使用 Cucumber。

这里有几个视频:

于 2009-07-02T02:01:02.617 回答
3

Ryan Bates 对这些主题有一些很好的 Railscasts:

于 2009-07-02T08:23:41.867 回答
1

这可能是个人喜好问题,但在试用了 Rspec 之后,我更喜欢使用内置的 Rails 测试框架和一个名为Shoulda的 gem 。在我看来,这种组合可以让你编写比 Rspec 更清晰、更简洁、更易理解的测试。但不是每个人都会同意。

Shoulda 的上下文允许您将测试组织成逻辑层次结构,这在您尝试测试所有可能的路径时非常有用,一些疯狂的分支情况,例如用户使用正确的密码登录、错误的密码、正确的密码但未确认注册等。

另外一定要安装ZenTest gem。这让您只需执行命令$ autotest,您的测试将在每次更改文件时自动运行。

于 2009-07-02T04:50:32.570 回答