jest是什么?
目前最为流行的前端测试框架,可以用于单元测试和系统
jest的安装
在开发环境安装jest
npm install jest -D
初始化jest配置
npx jest --init
在package.json里添加test命令
"scripts": {
"test":"jest",
//"test": "jest --watchAll", //持续监听
},
js测试的内容?
js对象 导出的函数
生成/查看测试覆盖率
npx jest --coverage
jest中的匹配器
toBe()
相当于 ===
test('测试严格相等',()=>{
const a = {number:'007'}
expect(a).toBe({number:'007'})
})
上面的结果是fail
toEqual()
相当于 ==
test('测试严格相等',()=>{
const a = {number:'007'}
expect(a).toEqual({number:'007'})
})
上面的结果是passed
toBeNull()
匹配null
test('toBeNull测试',()=>{
const a = null
expect(a).toBeNull()
})
toBeUndifined()
匹配undefined
test('toBeUndefined测试',()=>{
const a = undefined
expect(a).toBeUndefined()
})
toBeDefined()
只要定义过了,都可以匹配成功
test('toBeDefined测试',()=>{
const a = 'jspang'
expect(a).toBeDefined()
})
toBeTruthy() toBeFalsy()
匹配true 和false ,相当于判断真假
test('toBeTruthy 测试',()=>{
const a = 0
expect(a).toBeTruthy()
})
fail
test('toBeFalsy 测试',()=>{
const a = 0
expect(a).toBeFalsy()
})
passed
toBeGreaterThan()
大于传入的数值
test('toBeGreaterThan匹配器',()=>{
const count = 10
expect(count).toBeGreaterThan(9)
})
toBeLessThan()
小于传入的数值
test('toBeLessThan匹配器',()=>{
const count = 10
expect(count).toBeLessThan(11)
})
toBeGreaterThanOrEqual() toBeLessThanOrEqual()
大于等于传入的数值 ,小于等于传入的数值
test('toBeGreaterThanOrEqual匹配器',()=>{
const count = 10
expect(count).toBeGreaterThanOrEqual(10)
})
test('toBeGreaterThanOrEqual匹配器',()=>{
const count = 9
expect(count).toBeLessThanOrEqual(10)
})
toBeCloseTo()
消除浮点精度并判断相等
test('toEqual匹配器',()=>{
const one = 0.1
const two = 0.2
expect(one + two).toEqual(0.3)
}
failed
test('toBeCloseTo匹配器',()=>{
const one = 0.1
const two = 0.2
expect(one + two).toBeCloseTo(0.3)
})
passed