2017-04-06 142 views
0

我有两个测试目录。单元测试和集成测试。两者都使用摩卡。我可以为每个目录设置摩卡超时吗?

单元测试平均在1-5 ms之间运行。不幸的是我们的集成测试需要更长时间其中一些达30秒。

我想知道是否可以将超时设置为仅用于测试/集成目录的30秒,但在mocha.opts文件中使用默认mocha超时(2秒)保留测试/单元。或者可能有多个mocha.opts文件。

回答

0

对于单次调用Mocha的多个mocha.opts文件不支持。但是,您可以拥有两个Mocha调用,每个调用都有自己的mocha.opts

如果您希望在单个Mocha调用中执行所有操作,并为该套件的不同部分设置不同的超时值,那么没有直接的方法告诉M​​ocha“此目录中的文件有一个超时,并且该另一个目录中的文件有另一个超时”。您仅限于调用你的回调this.timeout,像这样:

describe("User view", function() { 
    this.timeout(...); 

    // Tests.... 
}); 

如果您构建您的套房内,使所有的集成测试由摩卡看作是单顶describe后代,可以有效地设置超时在只有一个位置(顶部describe)用于所有集成测试。请参阅this question and its answers以此方式构建套件。

相关问题