# 斷言 (assert)
~~~
穩(wěn)定度: 5 - 已鎖定
~~~
該模塊用于編寫程序的單元測試用例,通過require('assert')調(diào)用
### assert.fail(actual, expected, message, operator)
拋出一個異常,顯示用例的實際值(actual)和期望值(expected),通過分隔符(operator)隔開。
### assert(value, message), assert.ok(value, [message])
測試結(jié)果是否為真(true),相當(dāng)于 `assert.equal(true, !!value, message);`
### assert.equal(actual, expected, [message])
淺測試,等同于使用'=='進(jìn)行相等判斷
### assert.notEqual(actual, expected, [message])
淺測試,等同于使用'!='進(jìn)行不相等判斷
### assert.deepEqual(actual, expected, [message])
深度匹配測試
### assert.notDeepEqual(actual, expected, [message])
非深度匹配測試
### assert.strictEqual(actual, expected, [message])
嚴(yán)格相等匹配測試,等同用'==='判斷匹配
### assert.notStrictEqual(actual, expected, [message])
不嚴(yán)格相等測試,等同于使用'!=='判斷不匹配
### assert.throws(block, [error], [message])
聲明一個block用于拋出錯誤,'error'可以是構(gòu)造函數(shù),驗證函數(shù)或者正則表達(dá)式
用構(gòu)造函數(shù)驗證實例
~~~
assert.throws(
function() {
throw new Error("Wrong value");
},
Error
);
~~~
用正則表達(dá)式驗證信息錯誤
~~~
assert.throws(
function() {
throw new Error("Wrong value");
},
/value/
);
~~~
自定義錯誤校驗:
~~~
assert.throws(
function() {
throw new Error("Wrong value");
},
function(err) {
if ( (err instanceof Error) && /value/.test(err) ) {
return true;
}
},
"unexpected error"
);
~~~
### assert.doesNotThrow(block, [message])
聲明模塊不拋出錯誤,詳見 assert.throws
### assert.ifError(value)
測試值是否不為 false,當(dāng)為 true 時拋出。常用于回調(diào)中第一個 error 參數(shù)的檢查。
- 關(guān)于本文檔
- 概述
- 斷言 (assert)
- Buffer
- Addons插件
- 子進(jìn)程
- 集群
- 控制臺
- 加密(Crypto)
- 調(diào)試器
- DNS
- 域
- 事件 (Events)
- File System
- 全局對象
- HTTP
- HTTPS
- Modules
- net
- 操作系統(tǒng)
- 路徑 (Path)
- process
- punycode
- Query String
- Readline
- REPL
- Smalloc
- 流
- 字符串解碼器
- 定時器
- TLS (SSL)
- TTY
- UDP / 數(shù)據(jù)報套接字
- URL
- utils
- 執(zhí)行 JavaScript
- Zlib
- 進(jìn)度
- 感謝
