在node.js模块列表中列出了30多个测试框架...
哪些框架最受欢迎? 它们各有利弊吗?
我正在寻找一个支持单元测试具有大量异步回调代码(可能像大多数其他node项目一样)。 另外,我更喜欢简单轻巧而不是复杂的东西。
到目前为止,我已经研究了:
在node.js模块列表中列出了30多个测试框架...
哪些框架最受欢迎? 它们各有利弊吗?
我正在寻找一个支持单元测试具有大量异步回调代码(可能像大多数其他node项目一样)。 另外,我更喜欢简单轻巧而不是复杂的东西。
到目前为止,我已经研究了:
稍微宣传一下我自己的库,但更重要的是我希望其他测试框架的开发者思考一下JS中异步测试应该是什么样子:
我专门写了OKJS,因为QUnit在处理异步时非常无用。QUnit无法捕获异常(!),并且需要一个hacky start()来跟踪深度。
许多现有的测试框架都没有简单的回调包装器来测试超时和捕获异常。我不知道为什么——回调是异步开发的核心。 = /
setTimeout(function() {
ok( true, "Passed and ready to resume!" );
start();
}, 1000);
OKJS 在事件监听器中捕获异常,并使用内部死亡人员触发器跟踪未完成的异步请求,该触发器可以使测试失败。
setTimeout( unit.callback("test callback is fired"), 500);
setTimeout( unit.callback("callback fired, with subtests", function () {
unit.assert("in callback, true === true", true,true);
}), 500);
希望能够在企业解决方案中支持这种样式。OKJS提倡的其他功能包括以系列方式执行测试块(配方风格),但在块之间等待事件被解决。
test-studio 是一个 npm 包,为单元测试提供了一个强大的基于 Web 的前端。它目前仅支持 mocha,并提供执行单个或一组测试以及将 node-inspector 步进到单个测试等功能。
欲知详情,请点击 这里。