笑话匹配错误:接收到的值必须是一个函数

问题描述 投票:-1回答:1

我正在fontend方面工作,并且正在测试我的库,我收到了我所期望的错误,但是我无法断言。我有下一个代码:

it('If the username is not entered, I get an error', () => {
    try {
      new SDK('test', {
        password: 'aaaabbbbcccc',
        key: 'ddddeeefff',
      });
    } catch (error) {
      expect(error).toThrow(
        `Error: The 'username' property has not been entered`
      );
    }
  });

如您所见,要对我的图书馆进行身份验证,我需要:用户名,密码和密钥。这是我得到的错误:

enter image description here

谢谢!

javascript jestjs throw matcher
1个回答
0
投票

我发现了我的问题。 “期望”必须捕获异常,然后使用适当的匹配器(没有try / catch块)

it('If the username is not entered, I get an error', () => {
  expect(() => {
    new SDK('test', {
      password: 'aaaabbbbcccc',
      key: 'ddddeeefff',
    });
  }).toThrowError(`The 'username' property has not been entered`);
});
© www.soinside.com 2019 - 2024. All rights reserved.