• 每次您想测试一个值时,都会使用 expect 函数。您很少会单独调用 expect

    类型参数

    • T = any

    参数

    • actual: T

      要应用匹配器检查的值。

    返回 JestMatchers<T>

属性

not: InverseAsymmetricMatchers

方法

  • 添加一个模块,用于格式化应用程序特定的数据结构以进行序列化。

    参数

    • serializer: Plugin_2

    返回 void

  • 匹配使用给定构造函数创建的任何内容。您可以在 toEqualtoBeCalledWith 中使用它来代替字面值。

    参数

    • classType: any

    返回 any

    function randocall(fn) {
    return fn(Math.floor(Math.random() * 6 + 1));
    }

    test('randocall calls its callback with a number', () => {
    const mock = jest.fn();
    randocall(mock);
    expect(mock).toBeCalledWith(expect.any(Number));
    });
  • 匹配除 null 或 undefined 以外的任何内容。您可以在 toEqualtoBeCalledWith 中使用它来代替字面值。例如,如果您想检查一个模拟函数是否使用非空参数调用。

    返回 any

    test('map calls its argument with a non-null argument', () => {
    const mock = jest.fn();
    [1].map(x => mock(x));
    expect(mock).toBeCalledWith(expect.anything());
    });
  • 匹配完全由所提供数组中的元素组成的任何数组。您可以在 toEqualtoBeCalledWith 中使用它来代替字面值。

    您可以选择通过泛型为元素提供一个类型。

    类型参数

    • E = any

    参数

    • arr: readonly E[]

    返回 any

  • 验证在测试期间调用了特定数量的断言。这在测试异步代码时通常很有用,以确保回调中的断言确实被调用了。

    参数

    • num: number

    返回 void

  • 在比较对象属性或数组项中的浮点数时很有用。如果您需要比较一个数字,请改用 .toBeCloseTo

    可选的 numDigits 参数限制了小数点后要检查的位数。对于默认值 2,测试标准是 Math.abs(expected - received) < 0.005(即 10 ** -2 / 2)。

    参数

    • num: number
    • 可选numDigits: number

    返回 any

  • 您可以使用 expect.extend 向 Jest 添加您自己的匹配器。

    参数

    • obj: ExpectExtendMap

    返回 void

  • 返回 MatcherState & Record<string, any>

  • 验证在测试期间至少调用了一个断言。这在测试异步代码时通常很有用,以确保回调中的断言确实被调用了。

    返回 void

  • 匹配以递归方式匹配所提供键的任何对象。这通常与其他非对称匹配器结合使用时很方便。

    您可以选择通过泛型为对象提供一个类型。这确保了对象包含所需的结构。

    类型参数

    • E = {}

    参数

    • obj: E

    返回 any

  • 参数

    • state: object

    返回 void

  • 匹配包含确切预期字符串的任何接收字符串

    参数

    • str: string

    返回 any

  • 匹配包含确切提供字符串的任何字符串

    参数

    • str: string | RegExp

    返回 any