Jestを使用してエラーがスローされることを期待する方法


  1. expectを使用したエラーのテスト: Jestでは、expectメソッドを使用してエラーがスローされることをテストすることができます。以下はその例です。
test('エラーがスローされることを確認するテスト', () => {
  expect(() => {
    // エラーがスローされることを期待するコード
  }).toThrow();
});

上記のコードでは、expectメソッド内の関数が例外をスローすることを期待しています。もし例外がスローされない場合、テストは失敗します。

  1. 特定のエラーメッセージをテストする: 特定のエラーメッセージがスローされることをテストするには、toThrowメソッドに引数としてエラーメッセージを指定します。以下はその例です。
test('特定のエラーメッセージがスローされることを確認するテスト', () => {
  expect(() => {
    // エラーがスローされることを期待するコード
  }).toThrow('エラーメッセージ');
});

上記のコードでは、指定したエラーメッセージがスローされることを期待しています。もし異なるエラーメッセージがスローされた場合、テストは失敗します。

  1. 特定のエラータイプをテストする: 特定のエラータイプがスローされることをテストするには、toThrowメソッドにエラーコンストラクタを引数として指定します。以下はその例です。
test('特定のエラータイプがスローされることを確認するテスト', () => {
  expect(() => {
    // エラーがスローされることを期待するコード
  }).toThrow(TypeError);
});

上記のコードでは、TypeErrorという特定のエラータイプがスローされることを期待しています。もし異なるエラータイプがスローされた場合、テストは失敗します。

これらの方法を使用すると、Jestを利用してエラーがスローされることをテストすることができます。適切なエラーハンドリングと例外処理は、信頼性の高いコードを開発するために重要な要素です。