鍍金池/ 教程/ HTML/ 斷言測試
模塊
斷言測試
Buffer
Smalloc
TTY
概述
REPL
HTTP
DNS
路徑
集群
TLS/SSL
系統(tǒng)
加密
調(diào)試器
進(jìn)程
Punycode
虛擬機(jī)
HTTPS
網(wǎng)絡(luò)
Query String
C/C++ 插件
實用工具
文件系統(tǒng)
Zlib
子進(jìn)程
UDP/Datagram Sockets
定時器
逐行讀取
字符串解碼器
全局對象
事件
URL
控制臺

斷言測試

穩(wěn)定性: 5 - 鎖定

這個模塊可用于應(yīng)用的單元測試,通過 require('assert') 可以使用這個模塊。

assert.fail(actual, expected, message, operator)

使用參數(shù) operator 測試參數(shù) actual (實際值) 和 expected (期望值)是否相等。

assert(value[, message]), assert.ok(value[, message])

測試參數(shù) value 是否為 true,此函數(shù)和 assert.equal(true, !!value, message); 等價。

assert.equal(actual, expected[, message])

判斷實際值 actual 和期望值 expected 是否相等。

assert.notEqual(actual, expected[, message])

判斷實際值 actual 和期望值 expected 是否不等。

assert.deepEqual(actual, expected[, message])

執(zhí)行深度比較,判斷實際值 actual 和期望值 expected 是否相等。

assert.notDeepEqual(actual, expected[, message])

深度比較兩個參數(shù)是否不相等。

assert.strictEqual(actual, expected[, message])

深度比較兩個參數(shù)是否相等。

assert.notStrictEqual(actual, expected[, message])

此函數(shù)使用操作符 ‘!==’ 嚴(yán)格比較是否兩參數(shù)不相等。

assert.throws(block[, error][, message])

聲明一個 block 用來拋出錯誤(error), error可以是構(gòu)造函數(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])

聲明 block 不拋出錯誤,詳細(xì)信息參見 assert.throws

assert.ifError(value)

判斷參數(shù) value 是否為 false ,如果是 true 拋出異常。通常用來測試回調(diào)中第一個參數(shù) error。

上一篇:集群下一篇:網(wǎng)絡(luò)