Jest.js fakeAsync()还是done()?

osh3o9ms  于 2023-03-06  发布在  Jest
关注(0)|答案(1)|浏览(191)

当您使用Jest编写Angular 测试并且必须测试异步操作时,您更喜欢使用

it('', fakeAsync(() => {
    // test goes here 
  }));

或者类似的东西

it('', (done) => {
    // test goes here 
    done()
  });

我两个都试过了,但是done()似乎给了我更多解释性的错误消息。而且,我不确定它们是否相互排斥

z3yyvxxp

z3yyvxxp1#

您不需要done或fakeAsync。Jest支持本机异步支持,如下例所示

it('the data is peanut butter', async () => {
  const data = await fetchData();
  expect(data).toBe('peanut butter');
});

正如您所看到的,我们只声明了一个异步函数,剩下的部分将由jest完成

相关问题