BAT プレイグラウンドでのテストの実行方法

BAT プレイグラウンドとは、ビヘイビア駆動開発 (BDD) 機能について理解を深めるために使用できる Web アプリケーションです。プレイグラウンドはデフォルトでは Deck of Cards API でテストを実行しますが、コマンドを微調整し、BAT プレイグラウンドを使用する API でテストを実行して BDD 機能を実験し、詳細を確認することができます。この手順では、デフォルトのテストを変更し、代わりに、このワークフローの前半で設計した JSONPlaceholder API をテストします。

  1. 次の URL に移動して BAT プレイグラウンドを起動します。

    BAT プレイグラウンド
  2. BAT プレイグラウンドで API を使用してコマンドを試みることで、ビヘイビア駆動開発 (BDD) 機能について理解を深めます。たとえば、ステップ 3 の「Setting an id with HashMap (HashMap を使用した ID の設定)」を変更してみます。

    • GET 関数の URL を、前のワークフローステップで作成した JSONPlaceholder API の URL に置き換えます。次に例を示します。

      変更前: GET `http://deckofcardsapi.com/api/deck/new/shuffle/?deck_count=1`

      変更後: GET `http://apimon.cloudhub.io/users`

    • 第 11 行を次のように変更します。

      変更前: $.response.body.remaining mustEqual 52 // ←-- And a boolean assertion

      変更後: $.response.body.id[1] mustEqual 2 // ←-- And a boolean assertion

    • context.set ステートメントを置き換え、配列のインデックス位置 2 の ID が 3 になるようにします。

      変更前: context.set('deck_id', $.response.body.deck_id), // ←-- Setting deck_id

      変更後: $.response.body.id[2] mustEqual 3, // ←-- And a boolean assertion

    • これらの行を追加し、配列の 4 番目の名前が Karianne になるようにします。

      context.set('username', $.response.body.username[3]),
      $.response.body.username[3] mustMatch goodName,

      ステップ 3 は次のようになります。

      import * from bat::BDD
      import * from bat::Assertions
      
      var goodName = "Karianne"
      
      var context = bat::Mutable::HashMap() // <--- First, the HashMap
      ---
      describe `Deck of cards` in [
        // Then we get a new deck of cards
        GET `http://apimon.cloudhub.io/users` with {} assert [
          $.response.status mustEqual 200, // <--- Then a status assertion
          $.response.mime mustEqual "application/json", // <--- And a MIME type assertion
          $.response.body.id[2] mustEqual 3, // <--- And a boolean assertion
        ] execute [
          context.set('username', $.response.body.username[3]),
          $.response.body.username[3] mustMatch goodName,
          log($.response) // <--- Then log the response
        ]
      ]
  3. [Run Test (テストを実行)] をクリックします。

    テストの色分けされた結果が表示されます。

    テストの色分けされた結果

    BAT プレイグラウンドの実験中にエラーが発生するとヒントが表示されます。

    エラーが発生したときに表示されるヒント

次に、テストおよび監視をスケジュールします。

Was this article helpful?

💙 Thanks for your feedback!