4

セットアップとティアダウン内の 1 つのテストケースの db 接続を切り替えようとしました。しかし、どういうわけか、テストから次のメッセージが返されます。

RuntimeError: executing in another thread

これがテストケース コードです。

def setup
  Example.establish_connection(ActiveRecord::Base.configurations['oracle'])
end

def teardown
  Example.establish_connection(Rails.env)
end

テストデータベースはsqliteであり、テストケースに使用しようとしているデータベースは、PLSQL関数のためオラクルです。

4

1 に答える 1

0

私には潜在的な競合状態のように見えます。'oracle' ActiveRecord接続が別のスレッドに既に存在する場合、セットアップが完了しないことがあります。

'oracle'メソッドの開始時に明示的に接続を閉じようとしましたteardownか?

于 2012-09-19T06:35:47.240 に答える