Ich aktualisiere einen Rails-Stack von 4.2.x auf 5.0.1. Dieser Stapel enthält keine datenbankgestützten Modelle. Verwenden von rspec als Testframework. Die Tests werden in der 4.2.x-Umgebung ausgeführt, nicht jedoch in der 5.0.1-Verzweigung.rspec versucht, Fixtures zu laden, wenn ActiveRecord nicht verwendet wird?
- active_model/railtie nicht geladen
- config.active_record.dump_schema_after_migration Kommentar gesetzt ist
- Active :: Migration.maintain_test_schema! Kommentar gesetzt ist
- config.use_transactional_fixtures und config.fixture_path sind
- factory_girl und anderen Geräten/Fabrik-Tools sind nicht vorhanden
Trotz all der oben genannten Kommentar gesetzt wird rspec versucht Vorrichtungen zu laden und schließlich erhöhen eine Ausnahme (Stack-Trace unten), da ActiveRecord über keinen Verbindungspool verfügt. Irgendwelche Vorschläge von Dingen zu überprüfen, um dies zu korrigieren?
Gemfile:
gem 'rack-cors'
gem 'oauth2'
gem 'activemodel-serializers-xml'
gem 'draper', '~> 3.0.0.pre1'
gem 'aws-sdk', '~> 1.61.0'
gem 'newrelic_rpm'
gem 'skylight', '= 1.0.0'
gem 'actionpack-page_caching', '~> 1.1.0'
gem 'redis'
gem 'sneakers'
group :development do
gem 'better_errors'
gem 'binding_of_caller'
gem 'meta_request'
gem 'brakeman'
gem 'redis-rails-instrumentation'
end
group :development, :test do
gem 'dotenv-rails'
gem 'rspec-rails'
gem 'listen'
end
group :test do
gem 'selenium-webdriver'
gem 'capybara'
gem 'faker'
gem 'launchy'
gem 'codeclimate-test-reporter', require: nil
gem 'mock_redis'
gem 'simplecov'
end
Backtrace:
ActiveRecord::ConnectionNotEstablished:
No connection pool with id primary found.
# /Users/arvanasse/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/activerecord-5.0.1/lib/active_record/connection_adapters/abstract/connection_pool.rb:882:in `retrieve_connection'
# /Users/arvanasse/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/activerecord-5.0.1/lib/active_record/connection_handling.rb:128:in `retrieve_connection'
# /Users/arvanasse/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/activerecord-5.0.1/lib/active_record/connection_handling.rb:91:in `connection'
# /Users/arvanasse/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/activerecord-5.0.1/lib/active_record/fixtures.rb:516:in `create_fixtures'
# /Users/arvanasse/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/activerecord-5.0.1/lib/active_record/fixtures.rb:1015:in `load_fixtures'
# /Users/arvanasse/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/activerecord-5.0.1/lib/active_record/fixtures.rb:988:in `setup_fixtures'
# /Users/arvanasse/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/activerecord-5.0.1/lib/active_record/fixtures.rb:852:in `before_setup'
# /Users/arvanasse/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/rspec-rails-3.5.2/lib/rspec/rails/adapters.rb:126:in `block (2 levels) in <module:MinitestLifecycleAdapter>'
# /Users/arvanasse/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/rspec-core-3.5.4/lib/rspec/core/example.rb:443:in `instance_exec'
# /Users/arvanasse/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/rspec-core-3.5.4/lib/rspec/core/example.rb:443:in `instance_exec'
# /Users/arvanasse/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/rspec-core-3.5.4/lib/rspec/core/hooks.rb:375:in `execute_with'
# /Users/arvanasse/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/rspec-core-3.5.4/lib/rspec/core/hooks.rb:606:in `block (2 levels) in run_around_example_hooks_for'
# /Users/arvanasse/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/rspec-core-3.5.4/lib/rspec/core/example.rb:338:in `call'
# /Users/arvanasse/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/rspec-core-3.5.4/lib/rspec/core/example.rb:338:in `call'
# /Users/arvanasse/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/rspec-core-3.5.4/lib/rspec/core/hooks.rb:607:in `run_around_example_hooks_for'
# /Users/arvanasse/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/rspec-core-3.5.4/lib/rspec/core/hooks.rb:464:in `run'
# /Users/arvanasse/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/rspec-core-3.5.4/lib/rspec/core/example.rb:453:in `with_around_example_hooks'
# /Users/arvanasse/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/rspec-core-3.5.4/lib/rspec/core/example.rb:496:in `with_around_and_singleton_context_hooks'
# /Users/arvanasse/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/rspec-core-3.5.4/lib/rspec/core/example.rb:251:in `run'
# /Users/arvanasse/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/rspec-core-3.5.4/lib/rspec/core/example_group.rb:627:in `block in run_examples'
# /Users/arvanasse/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/rspec-core-3.5.4/lib/rspec/core/example_group.rb:623:in `map'
# /Users/arvanasse/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/rspec-core-3.5.4/lib/rspec/core/example_group.rb:623:in `run_examples'
# /Users/arvanasse/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/rspec-core-3.5.4/lib/rspec/core/example_group.rb:589:in `run'
# /Users/arvanasse/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/rspec-core-3.5.4/lib/rspec/core/example_group.rb:590:in `block in run'
# /Users/arvanasse/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/rspec-core-3.5.4/lib/rspec/core/example_group.rb:590:in `map'
# /Users/arvanasse/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/rspec-core-3.5.4/lib/rspec/core/example_group.rb:590:in `run'
# /Users/arvanasse/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/rspec-core-3.5.4/lib/rspec/core/runner.rb:113:in `block (3 levels) in run_specs'
# /Users/arvanasse/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/rspec-core-3.5.4/lib/rspec/core/runner.rb:113:in `map'
# /Users/arvanasse/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/rspec-core-3.5.4/lib/rspec/core/runner.rb:113:in `block (2 levels) in run_specs'
# /Users/arvanasse/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/rspec-core-3.5.4/lib/rspec/core/configuration.rb:1835:in `with_suite_hooks'
# /Users/arvanasse/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/rspec-core-3.5.4/lib/rspec/core/runner.rb:112:in `block in run_specs'
# /Users/arvanasse/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/rspec-core-3.5.4/lib/rspec/core/reporter.rb:77:in `report'
# /Users/arvanasse/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/rspec-core-3.5.4/lib/rspec/core/runner.rb:111:in `run_specs'
# /Users/arvanasse/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/rspec-core-3.5.4/lib/rspec/core/runner.rb:87:in `run'
# /Users/arvanasse/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/rspec-core-3.5.4/lib/rspec/core/runner.rb:71:in `run'
# /Users/arvanasse/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/rspec-core-3.5.4/lib/rspec/core/runner.rb:45:in `invoke'
# /Users/arvanasse/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/rspec-core-3.5.4/exe/rspec:4:in `<top (required)>'
# /Users/arvanasse/.rbenv/versions/2.2.3/bin/rspec:23:in `load'
# /Users/arvanasse/.rbenv/versions/2.2.3/bin/rspec:23:in `<top (required)>'
# /Users/arvanasse/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/bundler-1.14.3/lib/bundler/cli/exec.rb:74:in `load'
# /Users/arvanasse/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/bundler-1.14.3/lib/bundler/cli/exec.rb:74:in `kernel_load'
# /Users/arvanasse/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/bundler-1.14.3/lib/bundler/cli/exec.rb:27:in `run'
# /Users/arvanasse/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/bundler-1.14.3/lib/bundler/cli.rb:335:in `exec'
# /Users/arvanasse/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/bundler-1.14.3/lib/bundler/vendor/thor/lib/thor/command.rb:27:in `run'
# /Users/arvanasse/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/bundler-1.14.3/lib/bundler/vendor/thor/lib/thor/invocation.rb:126:in `invoke_command'
# /Users/arvanasse/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/bundler-1.14.3/lib/bundler/vendor/thor/lib/thor.rb:359:in `dispatch'
# /Users/arvanasse/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/bundler-1.14.3/lib/bundler/cli.rb:20:in `dispatch'
# /Users/arvanasse/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/bundler-1.14.3/lib/bundler/vendor/thor/lib/thor/base.rb:440:in `start'
# /Users/arvanasse/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/bundler-1.14.3/lib/bundler/cli.rb:11:in `start'
# /Users/arvanasse/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/bundler-1.14.3/exe/bundle:32:in `block in <top (required)>'
# /Users/arvanasse/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/bundler-1.14.3/lib/bundler/friendly_errors.rb:121:in `with_friendly_errors'
# /Users/arvanasse/.rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/bundler-1.14.3/exe/bundle:24:in `<top (required)>'
# /Users/arvanasse/.rbenv/versions/2.2.3/bin/bundle:23:in `load'
# /Users/arvanasse/.rbenv/versions/2.2.3/bin/bundle:23:in `<main>'
Was ist der Standardwert für 'config.use_transactional_fixtures'? Möglicherweise müssen Sie es explizit auf "false" setzen. –
@GregTarsa Ich glaube, der Standardwert ist falsch (der Kommentar von rspec zu der Einstellung: "Wenn Sie ActiveRecord nicht verwenden oder wenn Sie nicht jedes Ihrer Beispiele innerhalb einer Transaktion ausführen möchten, entfernen Sie die folgende Zeile oder weisen Sie false zu") . Ich habe versucht, es explizit auf falsch zu setzen, ohne die Ergebnisse zu ändern. – AndyV
Es sieht so aus, als ob Sie irgendwo eine Datenbankanforderung haben. Wenn dies auf Rails 4 funktioniert, bin ich nicht sicher, was ich empfehlen soll. Vielleicht solltest du [diesen SO-Artikel] (http://stackoverflow.com/questions/821251/how-to-configure-ruby-on-rails-with-no-database) überprüfen, um sicherzustellen, dass du keine DB konfiguriert hast. –