我知道不赞成使用FactoryGirl,而推荐使用FactoryBot,但我们尚未更新代码,因此我们仍在使用FactoryGirl。无论如何,要求Rails控制台中的FactoryGirl应该可以工作,但这不是必须的。
该宝石正确包含在我的Gemfile中
group :test, :development do
...
gem 'factory_girl_rails', '~> 4.9.0'
...
end
它在我运行bundle
$ bundle | grep factory
Using factory_girl 4.9.0
Using factory_girl_rails 4.9.0
但是当我在控制台中要求它时,它会失败。
[1] pry(main)> require 'factory_girl_rails'
=> false
[3] pry(main)> require 'factory_girl'
=> false
我的Gemfile中的其他任何宝石似乎都没有发生这种情况。谁能帮我解决这个问题?
答案 0 :(得分:5)
当require
返回false
时,这并不意味着发生错误。这表示该功能已加载。
require(name)
→true
或false
加载给定的
name
,如果成功则返回true
,如果已经加载了功能,则返回false
。
require
无法加载功能时,它将引发LoadError
。
答案 1 :(得分:2)
它返回false
,因为已经需要并加载了它。尝试
FactoryGirl
验证常量是否存在