3

为了开发的目的,我希望能够暂时禁用Chrome中的“预期”例外行为。例如,我有单元测试,创建有意抛出异常的对象的实现;当运行它们时,我不想暂停“已知”异常,而是暂停意外异常(例如,如果测试本身存在错误)。有没有办法从代码中切换Chrome DevTools“暂停异常”按钮?

有没有简单的方法来做到这一点?黑盒子的脚本并不是一个真正的选择,因为我想知道意外的例外情况(它显然不起作用;请参阅Chrome dev tools pauses on exceptions in blackboxed script)。只有未捕获的异常才会暂停,因为单元测试驱动程序最终会捕获所有这些异常,所以它不会暂停。

有没有一种方法可以使用JavaScript来切换选项,或者如果我愿意编写浏览器扩展(我已经完成了,但我不是专家),或者更好的方式来做到这一点,或者我不知道的另一种技术?

回答

0

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

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

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

+0

谢谢。是的,我相信在这种情况下,异常是正确的用法 - 当错误的东西传递给API等时抛出新的TypeError(...),并且我想编写测试来验证TypeError当它应该被抛出时。所以我可能没有选择。 –

相关问题