【问题标题】:Assert That "expect" Called X Times in Jest断言“期望”在开玩笑中被称为 X 次
【发布时间】:2020-03-17 14:41:35
【问题描述】:

如果根本没有调用expect,我怎么能通过测试?或者更好,当它没有被调用 X 次时?

例如:

it('should fail', () => {
    if (1 === 2) {
        expect(1).toEqual(1)
    }
}

换句话说,ava-t.planJest 中的等价物是什么?

【问题讨论】:

  • 我认为这是关于 JavaScript 的。 Java 标记在这里不合适。
  • 非常感谢。为什么因为错字而投反对票?
  • 因为它混淆了答案。

标签: javascript node.js jestjs ava


【解决方案1】:

您可以使用expect.hasAssertions() 来确保做出断言:

it('made an assertion', () => {
    expect.hasAssertions();
    if (1 === 2) {
        expect(1).toEqual(1)
    }
}

在这种情况下,测试将失败,因为从未调用过 expect

您还可以使用expect.assertions(...) 来确保在您的测试中进行了特定数量的断言。此测试将通过:

it('made 2 assertions', () => {
    expect.assertions(2);
    expect(1).toEqual(1);
    expect(2).toEqual(2);
}

有关更多信息,请参阅 expect 上的 Jest 文档。

【讨论】:

    猜你喜欢
    • 2018-08-14
    • 1970-01-01
    • 1970-01-01
    • 2018-05-22
    • 2019-04-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-16
    相关资源
    最近更新 更多