assert用来做什么?
assert作为Node的内置模块主要用于断言。assert模块提供了一些简单的测试功能,来针对项目进行测试,降低维护成本。
assert提供了哪些方法?
assert(value[,message])
assert.deepEqual(actual,excepted[,message]) (建议使用deepStrictEqual)
assert.deepStrictEqual(actual,excepted[,message])
assert.doesNotReject(asyncFn[,error][,message])
assert.doesNotThrow(fn[,error][,message])
assert.equal(actual,excepted[,message])
assert.strictEqual(actual,excepted[,message])
assert.fail([message])
assert.ifError(value)
assert.notDeepEqual(actural,excepted[,message])(建议使用notDeepStrictEqual)
assert.notDeepStrictEqual(actual,excepted[,message])
assert.notEqual(actual,excepted[,message]) (建议使用notStrictEqual)
assert.notStrictEqual(actual,excepted[,message])
assert.ok(value[,message])
assert.rejects(asyncFn[,error][,message])
assert.strictEqual(actual,excepted[,message])
assert.throws(fn[,error][,message])
1. assert(value[,message])同assert.ok(value[,message])
测试 value 是否为真值。如果value不为真值则抛出含有message
属性的错误;如果 message 参数为 undefined,则赋予默认的错误信息。如果没有传入value
,则 message 会被设为字符串 'No value argument passed to assert.ok()
'
2.assert.strictEqual(actual,excepted[,message])
判断actual
与excepted
是否相等(===)
3.assert.notStrictEqual(actual,excepted[,message])
与上面相反
4. assert.deepStrictEqual(actual, expected[, message])
对对象进行比较,测试 actual
参数与 expected
参数是否深度相等。 深度相等意味着子对象中可枚举的自身属性也会按以下规则递归地比较。
5.assert.notDeepStrictEqual(actual,excepted[,message])
测试 actual
参数与 expected
参数是否不深度全等。 与 assert.deepStrictEqual()
相反。
6.assert.fail([message])
抛出 AssertionError,并带上提供的错误信息或默认的错误信息。
7.assert.ifError(value)
判断value是否为false,如果为false则通过,如果为ture则抛出信息为value的错误。
8.assert.rejects(asyncFn[,error][,message])
9. assert.doesNotReject(asyncFn[,error][,message])
10.assert.throws(fn[,error][,message])
预期某个代码块会抛出一个错误,且抛出的错误符合指定的条件.如果代码块没有报错将会抛出含有message的错误。
网友评论