私は自分の組織にBDDのプラクティスを適用しようとしています。私は夜間のバッチジョブがバッチジョブを実行してお互いの間でデータを渡す巨大なオーケストレーションのマルチシステムフローである銀行で働いています。BDDテストをバッチシナリオに適用しますか?
私たちのテストでは、インタラクティブなオンラインテストはおそらくテストシナリオの40-50%しか占めておらず、残りはバッチジョブの中に組み込まれています。一例として、テストシナリオは次のようになります。私の貯金は、夜間バッチがバッチ実行後3AMに続いて午後11時
- 私は$ 0.001の追加の未収利息があることを確認して戻ってきてください。
- また、銀行の総勘定元帳には、未払利息$ 0.001を追加入力する必要があります。
このように、これは非常に非同期のシナリオです。私がキュウリを使ってトリガーするのであれば、ステップ定義を作成して$ 100の残高を10PMでアカウントに入れることができますが、キュウバーを使って11PMでバッチをトリガーするのは現実的ではありません通常、Control-Mなどの独自のスケジューリングツールを使用してオペレータによって実行されます。そして、キュウリをして、数時間待って、未払いの金利を確認する前に、私はタイムアウトに遭遇するかどうかわからない。
これは単なるシナリオの1つです。バッチランは銀行にとって非常に高価であり、できるだけ多くのシナリオを1回のバッチランに乗せることを常に追求しています。定期預金期末の最終的な利息が正しいかどうかを確認するために、6ヶ月のバッチを実行する必要がある時代遅れのシナリオもあります(私はきっとキュウリを待ち受けることができません。
私の質問は、BDDのプラクティスがこれらのような大きなバッチシナリオに適用された例はありますか?どのようにこれにアプローチしますか?
編集私はコントロールで午前孤立テストシナリオを実行するためにターゲットわけではない理由を説明します(私たちは私の銀行でシステムテストそれを呼び出す)私たちは、試験レベルの一つで分離されたシナリオを行う
とBDDは実際にそのような状況で機能します。しかし、最終的には、エンドツーエンドの環境全体(通常はSIT)を持つテストレベルに到達する必要があります。この環境では、複数のテストシナリオを並列に実行するための基準であり、いずれも環境を完全に制御することはできません。プロジェクトの範囲に応じて、この環境は最大200のアプリケーションを実行できます。したがって、インターネットバンキングなどの顧客チャネルは、コアバンキングシステムでは、利息計算や自動転送などのシナリオが実行されるトランザクションシナリオを実行します。総勘定元帳システムが環境内のすべてのアカウントを統合してバランスをとる会計シナリオもあります。この環境で手動テストを行うには、頻繁に少なくとも30〜50人の人員がトランザクションを実行し、結果を確認する必要があります。
私がしようとしているのは、BDDフレームワークを活用してテストの実行を自動化し、その結果をキャプチャして、環境内で手動でトラッキングする必要がない方法を見つけることです。
こんにちは、なぜ私は孤立して実行できるシナリオを記述していないのか説明しました。しかし、それはあまりにも多くの単語を取ったので、私は主な質問にそれを追加しました。ありがとうございました! – feicipet