Node.js 斷言測(cè)試

2022-02-26 10:28 更新

Node.js的assert模塊主要用于編寫(xiě)程序的單元測(cè)試時(shí)使用,通過(guò)斷言可以提早發(fā)現(xiàn)和排查出錯(cuò)誤。

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

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

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

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

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

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

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

判斷實(shí)際值actual和期望值expected是否相等。

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

判斷實(shí)際值actual和期望值expected是否不等。

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

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

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

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

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

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

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

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

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

聲明一個(gè)block用來(lái)拋出錯(cuò)誤(error),error可以是構(gòu)造函數(shù),正則表達(dá)式或其他驗(yàn)證器。

使用構(gòu)造函數(shù)驗(yàn)證實(shí)例:

    assert.throws(
      function() {
        throw new Error("Wrong value");
      },
      Error
    );

使用正則表達(dá)式驗(yàn)證錯(cuò)誤信息:

    assert.throws(
      function() {
        throw new Error("Wrong value");
      },
      /value/
    );

用戶(hù)自定義的錯(cuò)誤驗(yàn)證器:

    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不拋出錯(cuò)誤,詳細(xì)信息參見(jiàn)assert.throws。

assert.ifError(value)

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


以上內(nèi)容是否對(duì)您有幫助:
在線(xiàn)筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)