前端学习之路jest——常用的匹配

常用的匹配测试

test('工作',()=>{
    let a = {a:1} //== 值相等
    expect(a).toEqual({a:1})
})
test('工作',()=>{
    let a = null //需要一个null值
    expect(a).toBeNull()
})
test('工作',()=>{
    let a = '666' //需要一个不是Undefined
    expect(a).toBeDefined()
})
test('工作',()=>{
    let a = undefined //需要一个是Undefined
    expect(a).toBeUndefined()
})
test('工作',()=>{
    let a = 1   //需要true 
    expect(a).toBeTruthy()
})
test('工作',()=>{
    let a = 0    //需要false
    expect(a).toBeFalsy()
})

数值大小

test('比大小',()=>{
    let a = 666  //需要大于toBeGreaterThan里面跟的参数
    expect(a).toBeGreaterThan(665)
})
test('比大小',()=>{
    let a = 666  //需要小于toBeLessThan里面跟的参数
    expect(a).toBeLessThan(667)
})
test('比大小',()=>{
    let a = 666  //需要大等于toBeGreaterThanOrEqual里面跟的参数
    expect(a).toBeGreaterThanOrEqual(666)
})
test('比大小',()=>{
    let a = 0.1  //因为浮点错误是toBeCloseTo解决的问题,所以它不支持大整数值。
    let b = 0.1     //https://jestjs.io/docs/en/expect#tobeclosetonumber-numdigits
    expect(a + b).toBeCloseTo(0.2)
})

https://jestjs.io/docs/en/expect#tobeclosetonumber-numdigits

内容

test('字符串内容',()=>{
   let a = '天青色等烟雨,而我在等你'
    expect(a).toMatch(/烟雨/)
})
test('数组内容',()=>{
   let a = ['天青色等烟雨','而我在等你']
    expect(a).toContain('天青色等烟雨')
})

test('error异常抛错',()=>{
    let errorfn1 = ()=>{
        throw new Error('error')
    }
    expect(errorfn1).toThrow('error')
})
test('error异常抛错',()=>{
    let errorfn1 = ()=>{
        // throw new Error('error')
    }
    expect(errorfn1).not.toThrow('error')
})

你可能感兴趣的:(jest)