Jasminejs-null-check

提供:Dev Guides
移動先:案内検索

JasmineJS-ヌルチェック

Jasmineには、実際の出力がNull、定義済み、未定義のいずれであるかを確認するためのさまざまな方法が用意されています。 この章では、上記のシナリオを確認するために、さまざまなジャスミンメソッドを実装する方法を学習します。

定義します()

このマッチャーは、コード内の変数が事前定義されているかどうかを確認するために使用されます。 この例に従って customerMatcherSpec.js ファイルを変更しましょう。

currentVal = 0;

describe("Different Methods  of Expect Block",function () {
   it("Example of  toBeDefined", function () {
      expect(currentVal).toBeDefined();
   });
});

上記のコードでは、toBeDefined()は変数 currentVal がシステムで定義されているかどうかを確認します。 currentValは最初は0に定義されているため、このテストに合格し、出力として緑色のスクリーンショットが生成されます。

toBeDefinedメソッド

再び上記の例では、実際に「currentVal」を定義して再実行する最初の行を削除しましょう。 その後、赤い画面が表示されます。これは、未定義の値が定義されることを期待しているため、テストが実際に失敗することを意味します。 次のスクリーンショットが出力ファイルになります。

toBeDefined Error

ToBeUndefined()

このマッチャーは、変数が以前に定義されていないかどうかを確認するのに役立ちます。基本的には、以前のマッチャーであるtoBeDefinedとは反対に機能します。 次の例では、このマッチャーの使用方法を学習します。 Specファイル、つまり 次のエントリを持つ customerMatcher.js ファイル。

describe("Different Methods of Expect Block",function () {
   it("Example of toBeUndefine()", function () {
      var undefineValue;
      expect(undefineValue).toBeUndefined();
   });
});

上記のセクションでは、変数*“ undefineValue” *が実際に未定義であるかどうかを検証します。 このファイルをSpecRunnerに追加すると、出力として緑色のスクリーンショットが表示されます。これは、この値が実際には以前に定義されていないことを示しています。

toBeUndefineメソッド

ここでも、事前定義された値を使用して変数を定義し、エラーがスローされるかどうかを確認しましょう。 新しい customerMatcher.js は次のようになります。

describe("Different Methods of Expect Block",function () {
   it("Example oftoBeUndefine()", function () {
      var undefineValue = 0;
      expect(undefineValue).toBeUndefined();
   });
});

上記のコードは、“ undefineValue” *の値を“ 0” にすでに定義しており、定義されていないことを予期しているため、エラーをスローして赤いスクリーンショットを生成します。 次のスクリーンショットは、 *SpecRunnerl ファイルを実行すると生成されます。

toBeUndefine Error

toBeNull()

名前が示すように、この正規表現エンジンはnull値のチェックに役立ちます。 customerMatcherSpec.js ファイルを次のコードで再度変更します。

describe("Different Methods of Expect Block",function () {
   var value = null;

   it("Example of toBeNull()", function () {
      expect(value).toBeNull();
   });
});

上記のコードでは、1つの変数 "value" について言及しており、この値を明示的にnullとして言及しています。 expectブロックでは、toBeNull()マッチャーがこの値をチェックし、それに応じて結果を提供します。 以下は、SpecRunnerlファイルを使用して実行した場合の上記のコードの出力です。

toBeNullメソッド

次に、null以外の定義済みの値を指定してテストしてみましょう。 それに応じて customerMatcher.js ファイルを変更してください。

describe("Different Methods of Expect Block",function () {
   var value = "finddevguides";

   it("Example of  toBeNull()", function () {
      expect(value).toBeNull();
   });
});

上記の例では、変数値をnull値ではない「finddevguides」で変更しています。 したがって、このテストは失敗し、出力として赤いスクリーンショットが生成されます。

toBeNullエラー