Jest 中匹配器

有时我们希望Jest 在测试代码发生变化的时候,能够自动运行。

那么我们在 jest 命令后面 加上参数 --watchAll 即可。

  "scripts": {
    "test": "jest --watchAll",
    "coverage": "jest --coverage"
  },

下面,我们在math.test.js 中增加一个测试用例

test('测试匹配器', () => {
    const obj = { "a": 1}
    expect(obj).toBe({ "a": 1})
})

这时,测试就会报错

Jest 中匹配器_第1张图片

toBe 的话,使用Object.is() 判断是否相等(参官方文档https://jestjs.io/docs/en/using-matchers) 。

当我们判断值是否相等,不考虑引用是否一致时,使用toEqual。

test('测试匹配器', () => {
    const obj = { "a": 1}
    expect(obj).toEqual({ "a": 1})
})

除了 toBe(), toEqual() 之外,还有许多匹配器,我们可以在官网的文档中看到(https://jestjs.io/docs/en/using-matchers, https://jestjs.io/docs/en/expect)

比如说 toBeNull(), toBeUndefined(), toBeTruthy(), toBeFalsy ...

你可能感兴趣的:(前端测试)