2

私のプロジェクトはここにあります: https://github.com/jonesdeini/ICanHazSandvich

minitest-rails add を使用してセットアップを行っていますが、ジェネレーターに正しいテスト テンプレートを生成させることができません。

私の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

4

2 に答える 2

3

問題はfactory_girl_rails宝石です。その railtie は または のいずれrspecかを想定してtest_unitおり、その構成はあなたの構成と矛盾しています。これを解決する方法は次のとおりです。

ファイル内の依存関係をfactory_girlgem に変更します。Gemfile

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 を完全に削除することですが、それは別の質問に対する回答です...

于 2012-08-27T21:17:12.613 に答える
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

それはすべてうまくいくはずです!

于 2013-01-03T10:32:48.187 に答える