我如何确保Rails不会为视图和帮助器生成规范testing?

有没有办法从application.rb做到这一点?

编辑:简短的答案在上面

如果你想在每次运行生成器时都这样做,你确实在你的application.rb文件中定制了它。 把这段代码放在Application类定义的文件里。

config.generators do |g| g.view_specs false g.helper_specs false end 

您也可以通过将一些选项传递给generator命令来完成此操作。 Railscast更详细地介绍了这个过程,但其基本思想非常简单。

Rails生成器可以有几个选项。 您可以通过运行rails g controller -h来查看控制器生成器的选项。 假设您已经设置了Rspec,如果您查看输出,您会注意到一个部分显示“Rspec选项”。 它看起来像这样:

 Rspec options: [--controller-specs] # Indicates when to generate controller specs # Default: true [--view-specs] # Indicates when to generate view specs # Default: true 

要否定这些布尔值,只需在名称前加上“no”即可。 所以如果你想要一个没有规格的控制器,你可以这样调用它:

 rails g controller Foobar index show new create --no-view-specs 

而且你会得到一个控制器,为你创build正确的视图和动作,但没有你的观点的规范。

如果您使用scaffold发电机,同样的事情也适用。 有一个--helper-specs选项,所以如果你不想要视图或帮助器的规格,你可以运行:

 rails g scaffold Foobar name:string --no-helper-specs --no-view-specs