1

从 Rails 2.0.1 迁移到 2.3.17 后,单元测试不起作用。对于他们每个人,我都会遇到相同的错误:

“NoMethodError:未定义的方法 `assert_valid_keys' for false:FalseClass”。

有什么线索吗?

  • 红宝石版本:1.8.7(2011-02-18 补丁级别 334)[i686-darwin10.8.0]
  • 红宝石版本:1.8.25

NoMethodError: undefined methodassert_valid_keys' for false:FalseClass (eval):12:in run' /Applications/RubyMine.app/rb/testing/patch/testunit/test/unit/ui/teamcity/testrunner.rb:93:insend' /Applications/RubyMine.app/rb/testing/patch/testunit/test/unit/ui/teamcity/testrunner.rb:93:in start_mediator' /Applications/RubyMine.app/rb/testing/patch/testunit/test/unit/ui/teamcity/testrunner.rb:81:instart'`

4

1 回答 1

0

好的,我想我已经找到了解决方案。

在这个应用程序中,我正在使用插件fixture_scenarios,所以我更新了 lib/fixture_scenarios.rb 第 33 行,它是:

connection.transaction(Thread.current['open_transactions'] == 0) do

connection.transaction(:requires_new => Thread.current['open_transactions'] == 0) do

现在大部分测试都通过了。

于 2013-03-11T10:17:46.627 回答