我想让我的单元测试断言一个特定的函数调用在预期的时候特别抛出一个 AssertionError,而不是它根本抛出一个异常。断言库(期望)通过传入异常构造函数来支持这样的事情,但我似乎无法找到 AssertionError 构造函数的导出位置(如果在任何地方)。它是否只是一个内部类而不暴露给我们?文档包含许多对它的引用,但没有链接。
我有一个超级hacky的方式:
let AssertionError;
try {
const assert = require("assert");
assert.fail();
}
catch (ex) {
AssertionError = ex.constructor;
}
但我希望有更好的方法。