Testing a Workflow
The Test panel runs a workflow for one member as a dry run. Conditions and enrollment rules are checked for real against that member, but nothing happens: no email is sent, no segment or attribute changes, and no run is recorded. Use it to check a workflow before you publish it, or to work out why a member did or didn't get something.
Running a test
- Save the workflow at least once. A workflow that has never been saved has nothing to test.
- Click Test beside the canvas.
- Fill in the form and click Run as test.
| Field | What it does |
|---|---|
| Member | The email address of the member to test with. |
| Trigger event | The event that starts the test run. It must match the workflow's trigger. |
| Event payload | Optional. A JSON object standing in for the event's data, such as {"amount": 25, "plan": "pro"}. Conditions and {% event.* %} placeholders read it. |
| When a step waits | Which path every Wait for event step takes: Assume it timed out or Assume the event happened. |
The test uses the steps on the canvas, including changes you haven't saved yet. Enrollment and property settings come from the last save.
Reading the result
The panel first says whether the member Would enroll or Wouldn't enroll. When they wouldn't, it says why:
| Reason | What it means |
|---|---|
| The member or event doesn't match the trigger's conditions. | The Only enroll when conditions failed. |
| This member has already been through this workflow. | The enrollment mode is Once per member and the member already enrolled. |
| This member already has a run in progress. | The member is in the workflow right now. |
| This member is still in the enrollment cooldown. | Their last run finished too recently. |
| The event doesn't match the workflow's trigger event. | The Trigger event you entered isn't the workflow's trigger. |
| The workflow has no saved steps yet. | Save the workflow first. |
A test event doesn't come from a property. When the workflow is limited to some properties, the test runs as if the event came from the first of them, alphabetically.
When the member would enroll, the panel lists every step on their path with what would happen:
| Outcome | Meaning |
|---|---|
| Would send | The email that would go out, with its subject and recipient, its kind and topic, and whether the member's opt-outs would stop it. |
| Would add / Would remove | The segment change. |
| Would set / Would clear | The user attribute change. |
| Would wait | How long a delay or wait would last. Waits also show the path you told the test to assume. |
| A condition's path | Which path a condition took, with each value it checked and whether that value was known. |
| Would skip | A step the member would skip, such as an email to a member with no address. |
| Would fail | A step that would fail, with the reason, such as an email or segment that no longer exists. |
| Run ends | Where the run would finish. |
The canvas highlights the path the test took and dims the rest, so you can see which branches a member like this one would never reach.