我的项目住在这里:https://github.com/jonesdeini/ICanHazSandvich
我正在使用minitest-rails添加设置我无法让生成器生成正确的测试模板。
来自我的application.rb:
config.generators do |g|
g.test_framework :mini_test, :spec => true, :fixture => false
end
即使使用“g.test_framework nil”,我仍然会生成相同的测试模板:
输出:
rails g model Foo
invoke active_record
create db/migrate/20120827160129_create_foos.rb
create app/models/foo.rb
invoke test_unit
create test/unit/foo_test.rb
invoke factory_girl
create test/factories/foos.rb
即使使用“rails g model Foo --spec”,也会生成相同的文件。 我正在使用rails 3.2.8和ruby-1.9.3-p194
谢谢你的帮助!
的Gemfile:
group :development, :test do
gem 'factory_girl_rails'
gem 'minitest-rails'
gem 'minitest-rails-capybara'
end
编辑:
已针对此问题提交了拉取请求 https://github.com/thoughtbot/factory_girl_rails/pull/68
答案 0 :(得分:3)
问题是factory_girl_rails
宝石。该铁路假设为rspec
或test_unit
,其配置与您的配置冲突。我将如何解决这个问题:
将依赖关系更改为factory_girl
文件中的Gemfile
gem:
group :development, :test do
gem 'factory_girl'
gem 'minitest-rails'
gem 'minitest-rails-capybara'
end
将您的应用配置为在config/application.rb
文件中使用FactoryGirl:
config.generators do |g|
g.test_framework :mini_test, spec: true, fixture: false,
fixture_replacement: :factory_girl
end
嗯,这不完全正确。我如何真正解决它是完全删除FactoryGirl,但这是一个不同问题的答案......
答案 1 :(得分:1)
factory_girl_rails
gem强制使用Test::Unit
的问题已由维护者修复,但尚未过滤到rubygems.org
。
如果您更新Gemfile以包含:
group :development, :test do
gem 'factory_girl_rails', :git => "git://github.com/thoughtbot/factory_girl_rails.git"
end
它应该都很好用!