2013-04-25 53 views
1

我的公司已经为我们的应用程序构建了一个美妙的大型(472和不断增长的)摩卡测试套件,它在Chrome和Firefox中非常有用。在Internet Explorer中运行大型(沉重使用内存的)Mocha测试套件的任何技巧?

在IE中,但是在30次左右的测试后,测试出现“Error:Out of stack space”错误。所以,我的问题是...好吧,我有两个问题,主要和备份:

1)有没有什么办法让IE运行整个套件,也许通过调整一些配置选项在某个地方给它更多的记忆?我知道IE浏览器通常在这种事情上很糟糕,但如果Firefox和Chrome可以做到这一点,我不得不希望有一些方法可以让IE做到这一点...

2)失败了,是否有一个好方法摩卡说,“运行测试1-25,现在运行测试26-50等”,或者我只需要使用grep选项来尝试运行的测试数量的限制?

回答

2

猜猜我应该花更多时间在我来到这里之前使用谷歌搜索。我终于找到这张票:

https://github.com/visionmedia/mocha/issues/502

其中解释说:

  1. 这基本上是错误的摩卡:他们正在使用某种机制来清除堆,但没有按机制在IE中不工作,所以他们需要切换到其他机制(截至2013年4月25日还没有)。

  2. 一个(非常脏/哈克,但功能)解决办法是添加以下beforeEach在测试套件的根目录下(使之适用于所有测试):

    beforeEach(函数(完成) window.setTimeout(done,0); });

+0

顺便说一句,这不是一个完全完美的解决办法:在IE约350测试开始呕吐起来的弹出窗口抱怨一个缓慢的脚本,并询问如果我想阻止它,所以我必须点击“没有“几次进步。即使如此,我只能测试414左右(这是一个巨大的改进,但不是整个套件)。如果有人知道如何提高IE的内存使用率以防止弹出窗口,我很乐意听到它。 – machineghost 2013-04-25 18:08:34

+0

感谢分享。 :) – Gmajoulet 2013-07-31 09:49:52