【问题标题】:no stack trace for jasmine-node errors茉莉节点错误没有堆栈跟踪
【发布时间】:2019-11-22 17:04:52
【问题描述】:

我正在使用 node.js 和 jasmine-node npm 模块来运行测试。除非代码产生错误,否则这非常有效。我没有堆栈跟踪。例如,我的一项测试仅输出以下内容:

Error: TypeError: Cannot read property 'length' of undefined

没有堆栈跟踪。这使得查找这些错误非常耗时,以至于我正在寻找 jasmine-node 的替代方案。

如何让 jasmine-node 输出带有错误的完整堆栈跟踪? --verbose 命令行标志不这样做。

【问题讨论】:

  • 如果您可以发布一个测试代码的示例片段,该示例片段与实现的副本一起破坏,这可能会很有用。
  • 问题是代码太多我不知道要发布什么sn-p,因为没有堆栈跟踪。
  • 如果您的代码是 TDD 风格,那么对于任何重要的代码主体都应该进行大量的测试。鉴于此,您可以一次注释掉一个测试,直到您清除有问题的代码/测试

标签: node.js stack-trace jasmine


【解决方案1】:

您可以使用 jasmine-node 的 --captureExceptions 选项来输出全局异常的堆栈跟踪。

【讨论】:

  • 我发现这不起作用。我通常使用 Tape,相比之下 Jasmine 就一团糟。甚至 Node 的内置断言在整体上也做得更好。
  • 这个帮助我。谢谢! :)
【解决方案2】:

虽然我没有使用过 jasmine-node npm,但我之前遇到过这种错误。根据我的经验,当您的测试/实现范围之外的异步循环失败时,会报告这些类型的错误......

我们为捕获所有此类异常所做的是在执行之前添加此代码

process.on('uncaughtException',function(e) {
    sys.log("Caught unhandled exception: " + e);
    sys.log(" ---> : " + e.stack);
});

【讨论】:

    猜你喜欢
    • 2016-05-29
    • 2018-09-19
    • 1970-01-01
    • 2015-05-05
    • 2011-08-12
    • 1970-01-01
    • 2018-02-21
    • 2011-06-16
    • 2015-02-06
    相关资源
    最近更新 更多