describe(‘Assert用法测试‘, function () {
var obj1 = {
name: ‘111‘,
parent: {
mother: ‘222‘
}
}
var obj2 = {
name: ‘111‘,
parent: {
mother: ‘222‘
}
}
var obj3 = {
name: ‘333‘
}
var obj4 = {
name: 333
}
it(‘assert.ok‘, function () {
var msg = ‘值应为真‘
assert.ok(true, msg)
assert.ok(‘1‘, msg)
assert.ok(1, msg)
});
it(‘assert.equal‘, function () {
assert.equal(1, ‘1‘, ‘两个值应相等。使用\‘==\‘进行比较‘)
})
it(‘assert.notEqual‘, function () {
assert.notEqual(1, 2, ‘两个值应不相等。使用\‘!=\‘进行比较‘)
})
it(‘assert.deepEqual‘, function () {
assert.deepEqual(obj1, obj2, ‘两个对象中的属性应深度全等。使用\‘==\‘进行比较‘)
})
it(‘assert.notDeepEqual‘, function () {
assert.notDeepEqual(obj1, obj3, ‘两个对象中的属性应深度不全等。使用\‘!=\‘进行比较‘)
})
it(‘assert.strictEqual‘, function () {
var msg = ‘两个值应相等。使用\‘===\‘进行比较‘
assert.strictEqual(1, 1, msg)
assert.strictEqual(‘1‘, ‘1‘, msg)
assert.strictEqual(true, true, msg)
})
it(‘assert.notStrictEqual‘, function () {
var msg = ‘两个值应不相等,或值为不同类型。使用\‘!==\‘进行比较‘
assert.notStrictEqual(1, ‘1‘, msg)
assert.notStrictEqual(1, 2, msg)
})
it(‘assert.deepStrictEqual‘, function () {
assert.deepStrictEqual(obj1, obj2, ‘两个对象中的属性应深度全等,并且对应的值为同一类型。使用\‘===\‘进行比较‘)
})
it(‘assert.notDeepStrictEqual‘, function () {
assert.notDeepStrictEqual(obj4, obj3, ‘两个对象中的属性应深度不全等,或对应的值为不同类型。使用\‘!==\‘进行比较‘)
})
it(‘assert.throws‘, function () {
// 方法中应当抛出对应错误信息
assert.throws(function () {
throw ‘错误信息‘
}, /错误信息/)
})
it(‘assert.doesNotThrow‘, function () {
// 方法中不应抛出对应错误
assert.doesNotThrow(function () {
var a = 1 + 1;
}, RangeError, ‘抛出了RangeError错误‘)
})
it(‘assert.ifError‘, function () {
// 参数为真是,抛出错误;为假时,测试通过
assert.ifError(false)
})
// it(‘assert.fail‘, function () {
// assert.fail(1, ‘1‘, ‘主动抛出错误‘)
// })
})