我正在尝试决定是否从誓言切换到Mocha来开发一个大型的Node应用。
我几乎享受了所有的誓言体验--但在传递参数时有一些奇怪的地方。我总是需要挠头才能记住主题是如何工作的,这就干扰了编写测试的基础知识。这在深度嵌套的异步测试中尤其有问题。不过,我发现将Vows与async.js结合使用会有一些帮助。
因此,Mocha在报告方面似乎更具灵活性。我喜欢选择测试风格的自由&重要的是它也可以在浏览器中运行,这将是非常有用的。但我担心它仍然不能解决深度嵌套异步测试的可读性问题。
有没有人有什么实用的建议-- Mocha能让深度嵌套的测试变得可读吗?我是不是遗漏了什么?
发布于 2012-02-13 21:44:58
摩卡是王牌。它提供了一个完成的回调,而不是jasmine提供的waitsFor。我不能从誓言中谈论迁移,但从jasmine中它是直截了当的。在你的mocha测试函数中,如果你愿意,你可以使用async (或者Seq等)。如果你想成为遗留的),但如果你在这一点上需要嵌套回调,这是一个集成测试,这可能会让你考虑测试的粒度。
OT: 100%的测试覆盖率很少交付任何价值。
发布于 2012-02-13 18:50:34
通过在单元测试套件中使用流控制来解决深度嵌套测试。
Vows不允许这样做,因为导出样式需要创建支持这一点的流控制库。
要么为vows编写一个流量控制库,要么切换到mocha并重用现有的流量控制库。
https://stackoverflow.com/questions/9259111
复制相似问题