我应该从Vows切换到Mocha吗?

时间:2012-02-13 10:44:39

标签: node.js mocha vows

我正在尝试决定是否从Vows切换到Mocha以获取大型Node应用程序。

我几乎享受了所有誓言的体验 - 但是这个论点传递只有一些奇怪的地方。我总是不得不抓住我的头脑来记住主题是如何工作的,这会干扰编写测试的基础知识。在深度嵌套的异步测试中尤其有问题。虽然我发现将Vows与async.js结合起来可以有所帮助。

所以Mocha的报道似乎更灵活。我喜欢选择测试风格的自由度。重要的是它也在浏览器中运行,这将非常有用。但我担心它仍然无法解决深层嵌套异步测试的可读性问题。

有没有人有任何实用的建议 - 摩卡可以让深层嵌套测试可读吗?我错过了什么吗?

2 个答案:

答案 0 :(得分:9)

摩卡是王牌。它提供了一个完成的回调,而不是为茉莉提供的等待。我不能谈论从誓言中迁移,但从茉莉花那里直接进行。在你的mocha测试功能里面你可以使用async(或Seq等......如果你想成为遗留的)虽然如果你在那时需要嵌套回调它是一个集成测试,这可能会让你考虑你的测试的粒度

OT:100%的测试覆盖率很少提供任何价值。

答案 1 :(得分:3)

通过在单元测试套件中使用流控制来解决深度嵌套测试。

Vows不容易这样做,因为导出样式需要创建支持它的流控制库。

为誓言编写流控制库或切换到mocha并重新使用现有的流控制库。