assert.throws

関数の概要

assert.throwsは、Node.jsのアサーションモジュールに含まれる関数の一つです。この関数は、特定の関数が例外をスローすることをテストする際に使用されます。例外がスローされない場合にはテストが失敗します。主にユニットテストなどで利用されます。

パラメータの説明

パラメータ 用途
fn Function 例外をスローするかテストする関数
error RegExp/Error/Function 期待されるエラーメッセージまたはエラーオブジェクト

戻り値

assert.throwsは非同期関数で、例外がスローされた場合は何も返さず、スローされなかった場合はAssertionErrorをスローします。

使用例

例1:特定の関数がエラーをスローすることをテスト


assert.throws(
  () => {
    throw new Error('エラーメッセージ');
  },
  /エラーメッセージ/
);

例2:特定の関数が指定したエラーオブジェクトをスローすることをテスト


assert.throws(
  () => {
    throw new TypeError('Type Error');
  },
  TypeError
);

関連する関数

  • assert.doesNotThrow: 特定の関数がエラーをスローしないことをテスト
  • assert.rejects: Promiseが拒否されることをテスト

まとめ

assert.throwsは、特定の関数が例外をスローすることをテストする際に使用される関数です。適切なエラーメッセージやエラーオブジェクトを指定して、テストを行うことが重要です。