2011-01-10 66 views
5

当我运行我的黄瓜情况作为一个整体,或使用命令:黄瓜 我得到7个失败的步骤。当我使用正在处理的工作标签单独运行它们时,它们会很好地通过。为什么我的黄瓜方案在步骤一起运行时失败,但在单独运行时通过?

我不认为这是一个数据库状态问题..我与事务运行,我也尝试运行没有和数据库清洁清洁数据库....仍然没有帮助。

我试图运行调试器,但它运行命令黄瓜时似乎不工作。它只适用于当我运行工作正在进行标记:cucumber -p wip

我认为这可能是事情运行得太快,水豚不检查正确的东西?

任何想法?

+3

向我们展示它们如何失败,它会提供有用的上下文。 – 2011-01-10 03:57:53

+0

这个问题的标题听起来很fantastisch。 – 2011-01-10 04:05:50

回答

2

尤里卡!我现在一直有这个相同的问题 - 我的测试变得越来越慢,越多我添加 - 也有一些测试会失败随机,但只有当作为一个整体套件运行 - 在我的测试完成后,我会运行再次和中提琴特点!一切顺利。非常令人沮丧 - 但最令人沮丧的部分是速度 - 最近我升级到雪豹并将所有内容编译为64位。结果?我的测试从7分钟变为32分!

然而,有一个线索 - 64位应用程序使用更多的内存来做同样的事情,显然 - 然而,当我运行我的测试时,我的机器上的内存从未接近最大值。提示#2? Webrat正在快速发展,只有在使用culerity/celerity来测试javascript时,事情才真正放缓。

后来我发现jruby告诉java给它一个512MB的最大'堆大小'。 JRuby允许你在被调用时设置java选项,culerity允​​许环境变量以任何你喜欢的方式调用jruby。果然,在那段时间内,java会停止使用内存,处理器会尝试着手自己着火。那么你准备好了吗?那就是:

JRUBY_INVOCATION="jruby -J-Xmx1024m" cucumber

这增加了我的堆大小为技嘉和我的测试时间掉了下来〜7分钟!是吗?我收到了吗?我当然希望它有帮助!

相关问题