我的项目在这里:https://github.com/jonesdeini/ICanHazSandvich
我正在使用 minitest-rails add 进行设置,但我无法让生成器生成正确的测试模板。
来 self 的 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
感谢您的帮助!
gem 文件:
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
最佳答案
问题出在 factory_girl_rails
gem 上。该railtie 采用 rspec
或 test_unit
,并且其配置与您的配置冲突。以下是我解决此问题的方法:
将依赖项更改为 Gemfile
文件中的 factory_girl
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,但这是另一个问题的答案......
关于ruby-on-rails-3.2 - Rails 生成器未生成正确的测试模板,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12148611/