Assert 事件是一種調試工具,類似於Conditional event ,可測試您的鏈的邏輯,並驗證它是否如預期般運作。在最基本的層級上,當斷言通過時,鏈分支會不間斷地繼續,當斷言失敗時,鏈分支會停止 - 但有許多條件會影響此規則。您可以在本文底部找到常見用例清單 。
步驟 1:將事件新增至鏈
- 在Chain Builder 中,從Chains 索引標籤,按一下Edit 。
- 按一下連鎖事件 ,並將Assert 移至事件應在連鎖中出現的位置。
- 從鏈中的前一個節點拖曳連結至事件。
注意:要變更節點在鏈結中的位置,請取消其與其他節點的連結,然後將其移動到應發生的位置。要一次移動多個節點,請在選取它們時按住 Shift。
- 選取事件的節點,然後按一下「編輯」(Edit) create。
- 在「基本資訊」(Basic Info) 下,輸入唯一的名稱和描述以識別事件。
注意: 如果在此斷言失敗時整個鏈應停止,請啟用Stop Chain on Fail 。如果未勾選,即使此特定分支失敗,其他連鎖分支也會執行完成。
步驟 2:設定條件邏輯
在條件 下,建立條件邏輯為規則或規則群組,以測試各種資料類型的輸出和變數:
- 字串, 一個或多個字元
- 整數, 為任何整數、非十進制數值
- 日期, 為日期字串或變數
- Float, 表示任何數值
- JSON, for Javascript Object Notation
注意: 對於 JSON,使用變量轉換來解析數值。
- 選擇是否新增規則 或群組 的規則。
- 如果包含多個規則或群組,請使用AND 或OR 布林值連接它們:
- 如果所有 規則或群組必須為真,條件才會通過,請選擇AND 。
- 如果任何 規則或群組必須為真才能通過條件,請選擇或 。
- 對於每個規則,選擇要測試的資料類型和輸出或變數,並設定其條件以通過條件:
- 若要測試值是否為空白,請選擇Is blank 或Is not blank 。
- 若要測試值是否包含特定字元或其他輸出或變數值,請選擇Contains ,然後輸入或選擇要匹配的值。
- 若要測試值是否符合正規表達式,請選擇Matches RegExp ,然後輸入要匹配的表達式。
- 要測試數值是否以特定字元或其他輸出或變數值開始或結束,請選擇Start with 或Ends with ,然後輸入或選擇要匹配的數值。
- 若要測試數值是否等於金額,請選擇= 或!= ,然後輸入或選擇金額。
- 若要測試數值是否大於或小於某個金額,請選擇 < 或> ,然後輸入或選取金額。
- 若要測試數值是否大於或小於或等於金額,請選取 <= 或>= ,然後輸入或選取金額。
- 設定條件邏輯後,按一下儲存 。
注意: 若要從條件邏輯中移除規則,請按一下刪除 。
條件和常見用例
Assert 事件可新增至鏈中的多個路徑或分支。每個斷言均獨立運作,這意味著失敗的斷言只會停止其所在的特定分支 - 所有其他分支將繼續執行至完成。但是,如果任何單一斷言失敗,則整個鏈將被標記為 "Failed"。
須知事項
- 啟用Stop chain on fail 選項,當斷言失敗時立即停止整個鏈。
- 您可以透過新增Set Chain Result 事件 來覆寫連鎖失敗。當 Set Chain Result 節點設定為 "Succeed "時,不論任何失敗的断言,連鎖總是會通過。
Assert 事件 vs. Conditional 事件條件事件
Conditional 事件 與Set Chain Result 事件 結合使用時,可以達到類似結果 - 但相對於 Assert 事件,需要多個節點和分支路徑。Assert 事件旨在簡化並取代這個較複雜的流程。
以下是使用條件事件重新建立「Pass」和「Fail」分支所需的典型邏輯範例,以作示範:
以下是使用單一 Assert 事件的相同邏輯:
注意: 當在同一個鏈上使用時,Set Chain Result 事件總會覆蓋 Assert 事件的結果。例如,不論 Assert 事件如何,具有設定為 "Succeed "的 Set Chain Result 節點的鏈始終會通過。