测试是否在Jasmine中捕获了异常

时间:2016-03-03 11:54:17

标签: javascript node.js unit-testing jasmine

如何测试Jasmine中是否有异常?

如果我删除try...catch声明但我对此不感兴趣,那么期望是真的。

规格

import { foo } from './src';

describe('app', () => {
  it('should match if an exception was catched', () => {
    expect(() => foo()).toThrow();
  });
});

来源

function foo() {
  try {
    throw new Error();
  } catch(e) {
    console.log(e);
  }
}

export { foo };

1 个答案:

答案 0 :(得分:0)

也许我们可以窥探console.log以检查此输出,并测试是否捕获了此Error

// Test
spyOn(console, 'log');
foo();
expect(console.log).toHaveBeenCalledWith(new Error());