Assert イベントは、Conditional event に似たデバッグツールで、チェーンのロジックをテストし、意図したとおりに動作するかを検証します。最も基本的なレベルでは、連鎖分岐は、アサーションがパスすると中断されずに継続し、アサーションが失敗すると停止する。この記事の下の方に、よくある使用例のリスト() 。
ステップ1:イベントをチェーンに追加する
- Chain Builder で 、Chains タブから、Edit for chain をクリックする。
- Chain Events をクリックし、Assert をチェーン内のイベントが発生する場所に移動する。
- チェーンの前のノードからイベントへのリンクをドラッグする。
注: チェーン内のノードの位置を変更するには、他のノードとのリンクを解除してから、そのノードをあるべき位置に移動させる。複数のノードを一度に移動するには、SHIFT を押しながら選択します。
- イベントのノードを選択し、Edit をクリックする。
- [基本情報]で、イベントの識別に役立つ一意の名前と説明を入力します。
注: このアサーションが失敗したときにチェーン全体を停止させたい場合は、Stop Chain on Fail を有効にする。チェックを外したままにしておくと、この特定のブランチが失敗しても、他のチェーンブランチは完了まで実行される。
ステップ2:条件ロジックの設定
Conditions では、条件付きロジックをルールまたはルールグループとして構築し、さまざまなデータタイプの出力と変数をテストします:
- 文字列, 1文字または複数文字用
- 整数, 10進数でない任意の整数値用
- 日付, 日付文字列または変数用
- Float, 任意の数値の場合
- JSON, for Javascript Object Notation
注意: JSONの場合、値のパースには変数変換を使用する。
- ルールのルール またはグループ のどちらを追加するかを選択します。
- 複数のルールまたはグループを含める場合は、AND 、またはOR ブーリアンで結合する:
- のすべてのルールまたはグループが真でなければ条件が成立しない場合は、AND を選択する。
- ルールまたはグループのいずれかが真でなければ条件が成立しない場合は、OR を選択する。
- 各ルールについて、データのタイプとテストする出力または変数を選択し、その条件をパスするように設定する:
- 値が空白かどうかをテストするには、Is blank またはIs not blank を選択する。
- 値に特定の文字が含まれているか、別の出力値または変数値が含まれているかをテストするには、Contains を選択し、一致させる値を入力または選択します。
- 値が正規表現にマッチするかどうかをテストするには、Matches RegExp を選択し、マッチする式を入力します。
- 値が特定の文字で始まるか終わるか、あるいは別の出力値または変数値で始まるか終わるかをテストするには、Start with またはEnds with を選択し、一致させる値を入力または選択する。
- 数値が金額に等しいかどうかを調べるには、= または!= を選択し、金額を入力または選択する。
- 数値が金額より大きいか小さいかを調べるには、< または> を選択し、金額を入力または選択する。
- 数値が金額より大きいか小さいかを調べるには、<= または>= を選択し、金額を入力または選択する。
- 条件ロジックを設定したら、Save をクリックします。
注: 条件ロジックからルールを削除するには、削除
をクリックします。使用条件と一般的な使用例
Assertイベントは、チェーンの複数のパスや "ブランチ "に追加することができる。つまり、失敗したアサーションは、それが置かれた特定のブランチだけを停止させる。しかし、アサーションが 1 つでも失敗すると、チェーン全体が "Failed" とマークされる。
注意事項:
- Stop chain on fail オプションを有効にすると、アサーションが失敗したときにチェーン全体を直ちに停止させることができる。
-
Set Chain Result イベント を追加することで、チェーンの失敗をオーバーライドできます。Set Chain Result ノードが "Succeed" に設定されている場合、失敗したアサーションに関係なく、チェーンは常にパスします。
アサート・イベント対条件付きイベント
Conditionalイベント は、Set Chain Resultイベント と組み合わせることで、同様の結果を得ることができる。Assertイベントは、この複雑なプロセスを簡素化し、置き換えることを目的としている。
その例として、"Pass "と "Fail "の分岐をConditionalイベントで再現する典型的なロジックを示します:
そして、同じロジックを1つのAssertイベントを使って説明する:
注: 同じチェーン上で使用された場合、Set Chain Resultイベントは常にAssertイベントの結果を上書きします。例えば、Set Chain Resultノードが "Succeed "に設定されているチェーンは、Assertイベントに関係なく常にパスする。