我昨天刚开始一个新项目,我遇到了很多非常奇怪的交易夹具问题。听起来这对Rails来说是一个问题,所以我希望StackOverflow可以提供帮助。这是破败。
同事可以正常运行测试。他们正在运行Mac OS X;我正在运行Ubuntu。
当use_transactional_fixtures
为true
时,许多测试都会因can't find [record] with ID=[some-id]
而失败。我的同事在这种模式下运行,但没有遇到任何问题。
如果我将use_transactional_fixtures
设置为false
,则几乎所有以前失败的测试都会再次通过。我的同事没有看到任何区别,只是由于交易不再使用,测试运行速度相当慢。
当使用rake spec SPEC=spec/some-specific-spec.rb
上的灯具单独(false
)运行测试时,测试#1,234出现故障,并且仅测试#1,234。 / p>
当测试与rake spec
上的灯具一起一起运行(false
)时,测试#3,456出现故障,只测试#3,456。
这两项测试没有任何明显的关联。有很多测试(超过5,000),因此可能会发生巧合似乎并不令人惊讶。
你会从这种情况中得出什么推论,你将如何解决它?