我尝试运行我的RSpec测试:
rspec comments.rb
Run Code Online (Sandbox Code Playgroud)
但不断得到同样的错误(见标题).在有人问我之前我已经添加require factory_girl
到spec_helper.rb.
spec/factories/comments.rb
文件内容如下:
FactoryGirl.define do
factory :comment do
comment "MyString"
task_id 1
end
end
Run Code Online (Sandbox Code Playgroud)
这是gemfile的测试组,其中包含了factory_girl_rails:
source 'http://rubygems.org'
...
group :development, :test do
gem 'debugger'
gem 'factory_girl_rails'
gem 'rspec-rails'
end
...
Run Code Online (Sandbox Code Playgroud) factory_girl
和factory_girl_rails
Ruby Gems 有区别吗?我有一个反复出现的问题,RSpec测试中出现错误:"未初始化的常量FactoryGirl(NameError)".
有人告诉我,两者之间存在差异(这实在令人困惑),而另一方需要另一方工作或沿着这些方向发展?
我的spec_helper文件包含:
require 'factory_girl'
require 'factory_girl_rails'
Run Code Online (Sandbox Code Playgroud)
我的Gemfile有:
gem 'factory_girl_rails'
Run Code Online (Sandbox Code Playgroud)
这是完整的错误:
uninitialized constant FactoryGirl (NameError)
from /srv/homes/rvm/gems/ruby-2.0.0-p247@global/gems/rspec-core-2.14.7/lib/rspec/core/configuration.rb:896:in `load'
from /srv/homes/rvm/gems/ruby-2.0.0-p247@global/gems/rspec-core-2.14.7/lib/rspec/core/configuration.rb:896:in `block in load_spec_files'
from /srv/homes/rvm/gems/ruby-2.0.0-p247@global/gems/rspec-core-2.14.7/lib/rspec/core/configuration.rb:896:in `each'
from /srv/homes/rvm/gems/ruby-2.0.0-p247@global/gems/rspec-core-2.14.7/lib/rspec/core/configuration.rb:896:in `load_spec_files'
from /srv/homes/rvm/gems/ruby-2.0.0-p247@global/gems/rspec-core-2.14.7/lib/rspec/core/command_line.rb:22:in `run'
from /srv/homes/rvm/gems/ruby-2.0.0-p247@global/gems/rspec-core-2.14.7/lib/rspec/core/runner.rb:80:in `run'
from /srv/homes/rvm/gems/ruby-2.0.0-p247@global/gems/rspec-core-2.14.7/lib/rspec/core/runner.rb:17:in `block in autorun'
****@epi-stu-hut-shell3:~/projects/project4/spec/factories$
Run Code Online (Sandbox Code Playgroud)