ruby-on-rails - 为 Rails 中的一个 TestCase 切换 DB-Connection

标签 ruby-on-rails oracle unit-testing

我尝试在设置和拆卸过程中为一个测试用例切换数据库连接。
但不知何故,测试给我返回了这条消息:

RuntimeError: executing in another thread

这就是测试用例代码:
def setup
  Example.establish_connection(ActiveRecord::Base.configurations['oracle'])
end

def teardown
  Example.establish_connection(Rails.env)
end

由于 PLSQL 函数,测试数据库是 sqlite,我尝试用于测试用例的数据库是 oracle。

最佳答案

对我来说看起来像是潜在的竞争条件。如果 'oracle',安装可能无法完成ActiveRecord连接已存在于另一个线程中。

您是否尝试过明确关闭 'oracle'您的 teardown 开始时的连接方法?

关于ruby-on-rails - 为 Rails 中的一个 TestCase 切换 DB-Connection,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12408379/

相关文章:

jquery - 数据库值不会反射(reflect)到 jQuery UI slider

database - 通过保持相同的数字转换为数字(字符串)

java - 将 JSON 对象与实例匹配

javascript - Mocha 在测试中提供 "not a function response"

ruby-on-rails - strptime 和 I18n,如何解析当前语言的日期

ruby-on-rails - rails : find_or_create_by equivalent that will not persist until save

ruby-on-rails - 在 ruby​​ on rails app 中运行 bundle install 时无法验证 SSL 证书错误

c# - OracleBulkCopy 不向表中插入条目

oracle - 向生产中的现有表添加新列

c# - 如何让 "Copy to Output Directory"与单元测试一起使用?