QUnit-アサーションの使用

すべてのアサーションはアサートカテゴリにあります。

このカテゴリは、テストの作成に役立つ一連のアサーションメソッドを提供します。失敗したアサーションのみが記録されます。

シニア番号 方法と説明
1

async()

非同期操作を待つようにQUnitに指示します。

2

deepEqual()

プリミティブ型、配列、オブジェクト、正規表現、日付、および関数を処理する、深い再帰的な比較。

3

equal()

厳密ではない比較。JUnitのassertEqualsとほぼ同等です。

4

expect()

テスト内で実行されると予想されるアサーションの数を指定します。

5

notDeepEqual()

プリミティブ型、配列、オブジェクト、正規表現、日付、および関数を処理する、逆の深い再帰的な比較。

6

notEqual()

不平等をチェックする非厳密な比較。

7

notOk()

ブールチェック。ok()とCommonJSのassert.ok()の逆であり、JUnitのassertFalse()と同等です。最初の引数がfalseの場合に渡されます。

8

notPropEqual()

オブジェクト自体のプロパティの厳密な比較。不平等をチェックします。

9

notStrictEqual()

厳密な比較、不平等のチェック。

10

ok()

CommonJSのassert.ok()およびJUnitのassertTrue()と同等のブールチェック。最初の引数がtrueの場合に渡されます。

11

propEqual()

オブジェクト自体のプロパティの厳密な型と値の比較。

12

push()

カスタムアサーションの結果を報告します。

13

strictEqual()

厳密なタイプと値の比較。

14

throws()

コールバックが例外をスローするかどうかをテストし、オプションでスローされたエラーを比較します。

例で上記の方法のほとんどをカバーしてみましょう。

<html>
   <head>
      <meta charset = "utf-8">
      <title>QUnit basic example</title>
      <link rel = "stylesheet" href = "https://code.jquery.com/qunit/qunit-1.22.0.css">
      <script src = "https://code.jquery.com/qunit/qunit-1.22.0.js"></script>
   </head>
   
   <body>
      <div id = "qunit"></div>
      <div id = "qunit-fixture"></div> 
      <script>
         QUnit.test( "TestSuite", function( assert ) {
            //test data
            var str1 = "abc";
            var str2 = "abc";
            var str3 = null;
            var val1 = 5;
            var val2 = 6;
            var expectedArray = ["one", "two", "three"];
            var resultArray =  ["one", "two", "three"];

            //Check that two objects are equal
            assert.equal(str1, str2, "Strings passed are equal.");
			
            //Check that two objects are not equal
            assert.notEqual(str1,str3, "Strings passed are not equal.");

            //Check that a condition is true
            assert.ok(val1 < val2, val1 + " is less than " + val2);
			
            //Check that a condition is false
            assert.notOk(val1 > val2, val2 + " is not less than " + val1);

            //Check whether two arrays are equal to each other.
            assert.deepEqual(expectedArray, resultArray ,"Arrays passed are equal.");
			
            //Check whether two arrays are equal to each other.
            assert.notDeepEqual(expectedArray, ["one", "two"],
               "Arrays passed are not equal.");			
         });
      </script>
   </body>
</html>

出力を確認する

次の結果が表示されます-