在Angular单元测试中使用jest throwError时,有时错误可能没有被正确检测到。这可能是因为错误未被正确处理或捕获。为了解决这个问题,可以采用以下方法:
expect
时,使用.toThrow()
方法捕获错误,以确保错误被正确检测到。例如:
it('should throw an error', () => {
expect(() => {
myFunction();
}).toThrow();
});
throwError
时,如果函数未正确处理错误,错误可能不会正确检测到。例如:
myFunction() {
if (someCondition) {
throw new Error('Error message!');
}
}
通过正确捕获错误,并确保正确处理错误,您应该可以在使用jest throwError
时正确检测到错误。