node.js学习之断言assert的使用

2025-06-02 02:43:46

1、二、判断值是否为真值判断值是否为真值有以下两个断言测试函数2.1 assert(value[, message])这个测试函数在 【Boolean(value)】 为 【true】时通过断言测试,否则抛出 【AssertionError】

node.js学习之断言assert的使用

3、上面代码由于没有指定【message】参数,抛出的为默认错误信息的【AssertionError】2.2 assert.ok(value[, message])assert.ok()与assert()的作用是一样的,都是测试【value】是否为真值。而且用法也一样,所以可以将assert()视为assert.ok()的语法糖

node.js学习之断言assert的使用

5、3.2 assert.deepEqual(actual, expected[, message])同样也是测试 预期值 和 实际值 是否相等,使用的仍然是(==),但是与equal不同的是,【deepEqual()在对引用类型进行比较的时候,不是对值的引用进行比较,而是比较的对象的属性值】

node.js学习之断言assert的使用

7、上面代码中 ena 和 enb 用于相同的可枚举属性【name】,有着值不同的不可枚举属性【hobby】,说明【deepEqual()不测试对象的不可枚举的属性】四. 判断预期值和实际值全等(===)这组测试函数是用于判断预期值和实际值是否深度相等的,内部使用的是(===),所以对象的原型也会进行比较,值得类型也是比较的范围。这组也有两个测试函数。4.1 assert.deepStrictEqual(actual, expected[, message])由于内部使用的是全等(===),所以对象的原型也会计入比较的范围

node.js学习之断言assert的使用

9、【提示!!】对引用类型还是永远通不过【strictEqual()】断言测试五、判断预期值和实际值不相等(!=)上面总结到了判断预期值和实际值相等,这儿总结一下判断预期值和实际值不想等的两个测试函数,实际上就是上面 (三) 的逆运算。5.1 assert.notEqual(actual, expected[, message])【notEqual()】为 【equal()】的逆运算,如果actual!= expected则断言通过,同样对于值类型是单纯对值进行比较,对应引用类型比较的是值得引用

node.js学习之断言assert的使用

11、上面代码中最后一个表达式倦虺赳式断言通过,说明【不比对原型、不可枚举属性,只比对自有可枚举属性】【注意!!】与notEqual的区别,也就是deepEqual和equal的区别,在引用数据类型的时候,颊俄岿髭deepEqual是比较的值而非引用,equal对比的是引用,所以引用类型在equal的时候是永远无法通过断言测试的,以此类推,引用类型在notEqual时是永远否可以通过断言测试的。六. 判断预期值和实际值严格不相等(!==)上面总结到了判断预期值和实际值严格相等,这儿总结一下判断预期值和实际值严格不相等的两个测试函数,实际上就是上面 (四) 的逆运算6.1 assert.notStrictEqual(actual, expected[, message])如果actual与expected不 !== 则断言通过, 与assert.deepStrictEqual()相反

node.js学习之断言assert的使用

13、七. 断言错误并抛出这一组有 四 个(可以说是 三 个)测试函数,是对错误进行的处理。7.1 assert.fail(message)这个测试函数不多说,可以看错是下一个函数的重载,用于主动抛出带有【message】属性的【AssertionError】对象

node.js学习之断言assert的使用

15、7.3 assert.throws(block,error, message)参数说明:block |Functionerror |RegExp|Functionmessage | any【说明!!】如果block抛出的错误满足error参数,也就是抛出错误与期望一致,则断言通过,否则抛出block中的错误,如果block不抛出错误,则抛出【AssertionError 】。【提示!!】error 参数可以是构造函数、正则表达式、或自定义函数。

node.js学习之断言assert的使用

17、7.4 assert.doesNotThrow(block, error, message)【说明!!】预期的错误和实际的错误一致时,不抛出实际错误,抛出AssertionError,不一致则抛出实际错误信息

node.js学习之断言assert的使用
声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
相关推荐
  • 阅读量:73
  • 阅读量:60
  • 阅读量:77
  • 阅读量:89
  • 阅读量:43
  • 猜你喜欢