【发布时间】:2018-07-24 19:14:54
【问题描述】:
所以...我只是想检查我的 sut 是否以这种方式使用依赖项,它是否会被调用至少 N 次并带有适当的参数。如果没有查找.mock.calls 条目并找到合适的条目的肮脏技巧,我无法找到一种方法。理想情况下,我希望代码看起来像这样:
it('...', () => {
const dependency = jest.fn();
const sut = createSut(dependency);
sut();
// that is of course wrong because of syntax but it shows what I want:
expect(dependency).toBeCalledWith({ some: 'arguments' }).times(5);
// this doesn't work - if at least one call was made it will always pass
for (let i = 0; i < 5: ++i)
expect(dependency).toBeCalledWith({ some: 'arguments' });
// this doesn't work either, 'cause at least one proper call will make tests pass
expect(dependency.mock.calls.length).toBeGreaterThanOrEqual(5);
expect(dependency).toBeCalledWith({ some: 'arguments' });
});
是否可以在不使用其他库(如 chai)的情况下在 jest 中获取我想要的内容?
【问题讨论】:
标签: javascript unit-testing jestjs