假设我有这样一个函数:
const f = async () => {
throw new Error('Huh???!');
};
我想测试它是否使用Jest抛出一个RangeError
(不仅仅是一个Error
)。
test('f throws a RangeError', () => {
expect(f()).rejects.toThrowError(RangeError);
});
然而,这项测试通过了。
如何检查Jest中异步抛出的错误类型?
您可以在拒绝后使用
:来安装
匹配器
test('f throws a RangeError', () => {
expect(f()).rejects.toBeInstanceOf(RangeError);
});
我正在处理一些代码,需要测试函数抛出的异常类型(是TypeError、ReferenceError等吗?)。 我当前的测试框架是AVA,我可以将其作为第二个参数方法进行测试,如下所示: 我开始用笑话重写我的测试,但找不到如何轻松做到这一点。这有可能吗?
在Javascript中的异步生成器函数中,第一个参数本身就是一个异步生成器函数,该函数用于转换函数。在函数中有一个转换和一个检查。如果检查不正确,应中止发电机功能。如果检查正确,则应得出结果。我用随机数模拟了误差。 我找到了三种抛出错误的方法: 返回Promise.reject(新的错误(一些消息); 抛出新的错误(一些消息。); 产生Promise.reject(新的错误(一些消息); 所有的
如何从Java 8流/lambda内部抛出检查异常? 换句话说,我想让像这样的代码编译: 此代码未编译,因为上面的方法抛出了,而该方法已被选中。 请注意,我不想在运行时异常中包装已检查的异常,而抛出包装的未检查的异常。我想抛出检查的异常本身,并且不向流中添加丑陋的/。
我试图在lambda内部抛出一个异常,但它总是给我一个错误,表示未处理的IOException。 有人能告诉我我做错了什么吗?
假设我有以下功能: 根据Jest文档,我应该能够使用以下代码测试函数是否引发异常: 但是,我得到了以下错误。 有人能告诉我我做错了什么吗? 谢谢!
我有一个异步函数,我希望在失败时抛出异常。然而,似乎有一些东西阻止了这一点: 通过省略try catch块,我希望抛出一个异常,我想在函数外部处理这个异常。 我得到的实际结果有点令人困惑: 当我尝试捕获异常并抛出其他东西时,会得到相同的结果: 该函数是从try块调用的,因此看不到这如何是未处理的promise。 我正在尝试使用< code>f作为另一个函数的参数: