常用Jest断言,test-utils+jest常用断言字典

Jest测试生成器已经是相当成熟了,Mocha相比各有优势,对于初学者来说,建议选用Jest,在项目中引用Jest,配置相当简单。
但是Jest官方文档里的断言类型实在太多了,罗列出来常用的几种断言类型,供大家参考,如果想要看全集,请移步到Jest官网。

常用

not: 类似于 ! 取反

expect(2).not.toBe(1)

toBe:类似 ===

expect(1).toBe(1)

toEqual:基本用来,匹配对象是否相等

expect({ one: 1 }).toEqual({ one: 1 })

toBeNull:用来匹配某个值 等于 null

expect(null).toBeNull(null)

toBeUndefined:用来匹配某个值 等于 undefined

expect(undefined).toBeUndefined(undefined)

toBeDeUndefined: 用来匹配某个值 不等于 undefined

expect('').toBeDeUndefined()

toBeTruthy: 用来匹配某个值 等于 真

expect(true).toBeTruthy()

toBeFalsy: 用来匹配某个值 等于 假

expect(false).toBeFalsy()

跟数字有关的匹配器

toBeGreaterThan 2>1 比某个数字大

expect(2).toBeGreaterThan(1)

toBeLessThan 1<2 比某个数字小

expect(1).toBeLessThan(2)

toBeGreaterThanOrEqual 2>=2 大于等于某个数字

expect(2).toBeGreaterThanOrEqual(2)

toBeLessThanOrEqual 2<=2 小于等于某个数字

expect(2).toBeLessThanOrEqual(2)

toBeCloseTo 用来计算浮点数相加是否相等
注:在js中小数相加 0.1 + 0.2 = 0.300000004 不知道会出现多少个0

expect(0.1 + 0.2).toBe(0.3) // 这个通不过测试
expect(0.1 + 0.2).toBeCloseTo(0.3) // 这样就可以了

字符串相关的

toMatch 匹配 字符串内是否包含(可以写正则表达式) 某个字符串

expect('你好').toMatch('/你/')
expect('你好啊').toMatch('你好')

数组 array Set 相关

toContain 是否包含 也可以用到字符串上

const arr = [1, 2, 3, 4]
expect(arr).toContain(3)

const setData = new Set(arr)
expect(setData).toContain(2)

异常相关的

toThrow(抛出的异常信息 “可以不填,可以写正则”) 测试异常

const errorFn = () => {
  throw new Error('这是一个错误')
}
test('测试函抛出出异常', () => {
  expect(errorFn).toThrow() // 正确
  expect(errorFn).toThrow('这是一个错误') // 正确
  expect(errorFn).toThrow(/这是一个错误/) // 正确

  expect(errorFn).toThrow('这不是一个错误') // 错误
})
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值