【问题标题】:Is there a way to toggle the Chrome DevTools "pause on exceptions" button from code?有没有办法从代码中切换 Chrome DevTools“异常暂停”按钮?
【发布时间】:2016-06-01 12:43:27
【问题描述】:

出于开发目的,我希望能够针对 Chrome 中的“预期”异常暂时禁用此行为。例如,我有创建有意抛出异常的对象实现的单元测试;在运行它们时,我不想暂停“已知”异常,而是暂停意外异常(例如,如果测试本身存在错误)。

有没有简单的方法来做到这一点?对脚本进行黑盒化并不是一个真正的选择,因为我想知道意外异常(而且它显然无论如何都不起作用;请参阅Chrome dev tools pauses on exceptions in blackboxed script)。仅在未捕获的异常上暂停并不是一个真正的选择,因为单元测试驱动程序最终会捕获所有这些异常,因此它永远不会暂停。

有没有一种方法可以使用 JavaScript 切换选项,或者如果我愿意编写浏览器扩展程序(我已经完成,但我不是高手),或者其他方式我不知道的技术?

【问题讨论】:

    标签: google-chrome google-chrome-extension google-chrome-devtools


    【解决方案1】:

    不,没有办法通过 javascript 触发该复选框。

    通常,使用异常来控制程序流是一种不好的做法。 (例如,见why not use exceptions as regular flow of control?

    如果您绝对需要有时不构造的构造函数,请使用Factory Methods,它可能会返回空值/错误。

    【讨论】:

    • 谢谢。是的,我确信在这种情况下异常是正确的用法——throw new TypeError(...) 当错误的东西被传递给 API 等时。我想编写测试来验证 TypeError 应该在什么时候被抛出.所以我可能别无选择。
    猜你喜欢
    • 2019-06-25
    • 1970-01-01
    • 1970-01-01
    • 2023-04-09
    • 2022-10-01
    • 1970-01-01
    • 1970-01-01
    • 2012-07-15
    • 2019-05-20
    相关资源
    最近更新 更多