BFT-ストリーミングテスト

こんにちは、家事労働者!

画像 私のIT(興味深いテスト)セクションでは、テストへのさまざまな興味深いアプローチと、エラーを見つけるプロセスを刺激的にする便利なツールについてお話します。
今日は以下についてお話します:

ストリームテスト(BFT-BusinessFlowTesting)

BFTは、特定のケースの観点からではなく、各ポイントでのシステムの動作の観点から製品を調べるテストアプローチです。
このアプローチは、データドリブンテストやビヘイビアドリブンテストなどの概念を組み合わせたもので、データ移動グラフで詳しく説明されているビジネスモデルに適用されます。
個々のテストケースをテストするのではなく、システムのパフォーマンスを確認します。テストケースは自分で取得します 笑顔
比Fig的に言えば、あなたは以下を持っています:
テストケースがありません。 テストケースは、入力データ自体に基づいて生成されます。
テストケースに正しく名前を付ける方法についてこれ以上議論しません。 テストケースの名前は、テストケースとそれらが進むパスを定義する入力データのセットです。 名前は長いですが、このテストを完全に説明しています。 それに加えて、あなたはそれに一秒を費やすことはありません-それはそれ自体で作成されます。

BFTフレームワーク

BFTフレームワークはどのように配置され、自分で作成するのですか? 簡単な例を見てみましょう。
アプリケーションが商品を販売する店であるとしましょう。 主な受入テストは、ユーザーがこの製品をどのように購入し、次に何が起こるかについてのテストです。

事業体:
注文状況:
製品移動グラフ

画像

ビジネスで提供される可能性が最も高いチャートがあります。 そうでなければ、あなたは自分でそれを作ることができます、それはそれ自体で多くの利益をもたらします。
この図をテストするために、テスターは各状態を説明します。
状態を説明するには、指定する必要があります。PSチェックと遷移の両方は、コンテキストの機能です。 状態になったデータセットと移動したパス(オプション)

各グラフはこのグラフの線形パスであり、入力データによって特徴付けられます。

画像

入力データにはいくつかのタイプがあります。

テストを書く

基本的な簡単なテスト
ビジネスグラフモデルがあります。 このグラフでは、各状態で何をチェックする必要があるか、次にどこに行くかを、既にプログラミング言語で記述したテストコードを作成します。
結論:テストグラフについて説明しました(最初のグラフを完全に説明する必要はありません。たとえば、最初は肯定的なシナリオのみを説明し、必要に応じて他のすべての状態と遷移を追加できます)。

画像

通常、最初のテストはメインのポジティブテストであり、ビジネスストリームの最初から最後までエラーなしで実行されます。
陽性検査の入力データを作成します。

テスト自体は次のようになります。
var SimpleScenario = BusinessGraph.GetScenario(CorrectSimpleData, DefaultControllData);BFTFramework.Run(SimpleScenario, CorrectSimpleData);
BusinessGraphは入力データCorrectSimpleDataを使用して、SimpleScenarioを取得する出力グラフに線形スクリプトパス(デフォルトのDefaultControllData)を構築します。
BFTFrameworkは、CorrectSimpleData入力を使用してこのスクリプトを実行します。

その他のテスト

ここで、多くの異なる肯定的なデータをテストする場合は、CorrectOtherDataの他のセットを単純に転送します。

たとえば、否定的なテスト(購入の払い戻しなど)を追加する必要がある場合:など、グラフを新しい方法で徐々に増やし、新しいデータセットでテストします。
いずれかのステップで新しいチェックを行うことにした場合、どのテストでそれが発生するかを考える必要はありません。 これを対応する状態に追加するだけで、通過するすべてのテストが調整されます。
製品が通過する必要がある新しい状態が表示されます。グラフに追加するだけで、それに影響するすべてのテストが新しいパスにリダイレクトされます。
必要な場合にのみ、テストコードをローカルで編集します。

合計:


応用分野

何かを使用する前に、このツールが適切かどうかを考えてください。
このアプローチは、事業体と事業体が住んでいる条件を区別しやすいプロジェクトに適用できます。
次のいずれかです。i-Free部門の1つで、このアプローチを成功裏に適用しました。美しく、簡単にサポートされ、ログに記録されたビジュアルテストを作成するのに役立つことを願っています。
次は?

次の記事:

Source: https://habr.com/ru/post/J212567/


All Articles