在 Rails 4 中开始使用 RSpec v3

Getting Started with RSpec v3 in Rails 4

这不是您要在此处显示的典型问题,但每个教程似乎都以不同的方式来解决这个问题。对于大多数人来说,它对他们有用,但对我来说,不行。

我的 rails 应用程序中有一个用户模型,并且我已经安装了 rspec。在我的 rails 应用程序目录中,我 运行:

rspec --init

创建了另一个文件夹:/spec/models 和一个文件:/spec/models/spec_user.rb。在该文件中:

require 'user' # Does this requires my app/model/user.rb file??

在终端中,当我 运行 rspec spec/models 时,我得到:cannot load such file -- user

如何让我的 app/models/user.rb 在我的 rspec 测试中要求?

您需要将规范文件重命名为如下所示:

modelname_spec.rb

反之亦然

将 rspec 与 rails 一起使用时,需要连接一些额外的东西,如果你想让它正常工作,那就有。我建议放弃基础 rpsec gem 以支持 rspec-rails

group :development, :test do
  gem 'rspec-rails', '~> 3.0'
end

bundle install

rails generate rspec:install

这将创建一个 spec/rails_helper.rb 来连接您的环境。文档可以带你从那里。安装 rspec-rails 和 运行 后,当您构建对象或使用 rails 生成器时,将生成适当的测试文件。