BDDFrameworkを試してみる(3)サマリ、初期終了処理、REST

前の記事で、BDDFrameworkのテストケースの作り方を一通り確認しました。

ここでは、BDDFramework残りの機能を確認していきます。

サマリ(FinalResult Block)

FinalResultの使い方

FinalResult Blockを画面内に配置すると、画面内の全Scenarioの実行結果を表示してくれます。

といっても、全件成功、N件失敗……位の情報ですが。

このブロックを検証中に、実行したケースの結果が間違って表示されることが何回もありました。どうも画面上部に配置すると、前回実行時の結果が表示されるように見受けられました。

FinalResultは画面内の全BDDScenarioの下に置くのがよいようです。

下の「1 SCENARIOS FAILED」は2件のシナリオを流して1件失敗するケースのメッセージです。

FinalResultの実装

BlockのPreparationです。

KeyValuesというEntityから値を取得し、BlockのUIに紐付けてある失敗件数を表す変数に設定しています。

KeyValuesの中身を確認してみると、直前のテスト実行で成功した件数、失敗した件数と思われる値が含まれていました。

初期終了処理(SetupOrTeardownStep)

OutSystemsの自動ユニットテストの書き方のドキュメント のThe Importance of Good Test Dataで、画面ごとに、画面内のテスト全体用のデータの準備とクリーンアップ用Actionを用意するように勧めていますね。 これをSetupOrTeardownStepに設定するイメージだと思います。

Setup, Teardownは、他のプログラミング言語でのxUnitのテストツールとほぼ同じ意味です。Scenario実行の前に実行されるのがSetup、終了の前に実行されるのがTeardownです。

それぞれ、Actionを用意しておきます。

同名のSetup Placeholder、Teardown PlaceholderにSetupOrTeardownStep Blockをドラッグ&ドロップで配置し、そのDestinationに用意したActionを設定します。

以下はSetupを配置したところです。

REST API

BDDFrameworkは、定義したテストを実行するためのREST APIがあります。

CIの一環にBDDFrameworkで作成した回帰テストを自動実行することができますね。

RunTestSuiteという名前で、以下のパラメータをGETで受け取ると、画面内のテストを実行して結果をJSONで返してくれます。

  • TestESpace:テストモジュールのeSpace名(モジュール名)
  • TestSuiteScreen:テスト(BDDScenario)を配置した画面名(Nameプロパティの値)

なお、テストを配置した画面は、Anonymousでアクセスできること、FinalResultを画面下部に配置していることが必要です。

OutSystemsのConsume REST APIのテスト機能で実行してみたところ。

URLはBDDFrameworkをService Studioで開き、(Logic)Integrations>REST>v1を右クリックしてOpen Documentすると、Swagger上で確認できます。

シリーズ一覧

シェアする

  • このエントリーをはてなブックマークに追加

フォローする