有時我們希望Jest 在測試代碼發生變化的時候,能夠自動運行。
那麼我們在 jest 命令後面 加上參數 --watchAll 即可。
"scripts": {
"test": "jest --watchAll",
"coverage": "jest --coverage"
},
下面,我們在math.test.js 中增加一個測試用例
test('測試匹配器', () => {
const obj = { "a": 1}
expect(obj).toBe({ "a": 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 ...