【问题标题】:How to generate automatic Rspec tests for existing scaffold如何为现有的脚手架生成自动 Rspec 测试
【发布时间】:2025-12-25 19:50:15
【问题描述】:

我在 Ruby on Rails 上有一个应用程序。所有文件都已根据脚手架本身生成的内容进行了修改。我想包含 Rspec gem 的自动测试,但我希望它生成它通常执行的所有自动测试(因为这是我第一次使用 rspec)。

我已经看到通常的方法是在生成脚手架之前安装 Rspec(当你生成脚手架时,测试会自动生成),但是既然一切都已经生成了,我怎么才能只生成测试呢?

我已经找到了rails generate rspec:install 命令,为测试运行做好了准备。

如何为现有的脚手架自动生成测试?

【问题讨论】:

  • 我不是一个经常使用的用户...我什至不知道这些积分是如何工作的

标签: ruby-on-rails testing rspec


【解决方案1】:
rails g rspec:scaffold scaffold_name

其中scaffold_name 是您在脚手架生成中使用的名称,在本例中为rails g scaffold scaffold_name

【讨论】:

    【解决方案2】:

    生成器会在覆盖任何现有文件之前进行提示。只需添加 RSpec 并重新运行生成器,跳过您想要保留的任何文件。

    如果你是偏执狂(为什么不应该这样呢?),请先提交你的工作。

    【讨论】:

    • 由于generate scaffold命令要求所有属于模型的属性,我应该在运行命令时将它们全部写入模型中,对吧?
    • 不,只是跳过模型。您只想创建规范(测试)文件,跳过其他所有内容。