Testing and Debugging
Before publishing a workflow to production, thorough testing ensures it behaves correctly under various conditions. The Workflow Builder provides tools to execute workflows, monitor progress, and diagnose issues.
Test Execution
Starting a Test Run
To test your workflow:
- Click the Play button in the toolbar at the top of the canvas
- The execution form appears, displaying all input variables defined for your workflow
- Fill in the required values for each input variable
- Click Execute to start the test run
Keep sample test data handy for your workflows. Having a set of known borrower IDs, loan amounts, and other common inputs makes testing faster and more consistent.
The Execution Form
The execution form is generated automatically from your workflow's input variables:
- Required fields are marked and must be filled before execution
- Optional fields with default values are pre-populated
- Field types determine the input control (text, number, dropdown, etc.)
- Descriptions appear as help text below each field
After clicking Execute, the workflow begins running and you can monitor its progress directly on the canvas.
Real-time Status
Visual Execution Feedback
During execution, each node on the canvas displays its current status through colored borders:
| Color | Status | Description |
|---|---|---|
| Gray | Idle | Task has not yet been executed |
| Blue (animated) | Running | Task is currently executing |
| Green | Success | Task completed successfully |
| Red | Error | Task failed during execution |
The animated blue border pulses to indicate active processing, making it easy to track which task is currently running.
Watching Execution Progress
As your workflow executes:
- Tasks turn blue one by one as they begin execution
- Successfully completed tasks turn green
- Failed tasks turn red, and execution may stop depending on error handling configuration
- You can follow the flow of execution visually across the canvas
Parallel branches execute simultaneously, so you may see multiple tasks with blue borders at the same time. This is normal for workflows with parallel processing paths.
Viewing Logs
Accessing Task Logs
To view detailed logs for any task:
- Click on the task node in the canvas
- The Properties Panel opens on the right side
- Navigate to the Logs tab
Log Information
The Logs tab displays:
- Execution timestamp: When the task started and completed
- Input values received: The actual data passed to the task
- Output values produced: The data returned by the task
- Error messages: Detailed error information if the task failed
- Execution duration: How long the task took to complete
Reading Error Messages
When a task fails, the error message typically includes:
- Error type: The category of error (validation, connection, timeout, etc.)
- Error details: Specific information about what went wrong
- Stack trace: Technical details for debugging (more useful for developers)
Error messages may contain technical terms. Focus on the main error description rather than the stack trace when troubleshooting. If the message mentions missing inputs or invalid values, check your variable mappings first.
Previewing Outputs
The Preview Tab
The Preview tab shows the output data from the most recent execution:
- Select a task on the canvas
- Open the Properties Panel
- Click the Preview tab
Understanding Output Data
The preview displays:
- JSON view: The complete output data in JSON format
- Expandable sections: Nested objects can be expanded to explore the data structure
- Value types: Data types are indicated for each field
This is particularly useful for:
- Verifying that a task returns the expected data structure
- Understanding what fields are available for use in subsequent tasks
- Confirming that variable mappings are working correctly
Debugging Tips
Start Simple
When building a new workflow:
- Add one or two tasks at a time
- Test after each addition
- Verify outputs before connecting more tasks
- Build complexity gradually
This incremental approach makes it easier to identify which change introduced a problem.
Test After Each Task
Rather than building the entire workflow before testing:
- Add a task
- Configure its inputs
- Run a test execution
- Check the output in the Preview tab
- Only then proceed to the next task
Check Variable Mappings
Most workflow errors stem from incorrect variable mappings:
- Open the task's Advanced tab
- Review each input mapping
- Verify variable names are spelled correctly
- Check that paths to nested properties are accurate
- Use the variable picker to avoid typos
Use Comment Tasks
For complex workflows, add Comment tasks to document your logic:
- Explain why certain decisions are made
- Note expected values at different points
- Mark sections that require special attention
- Leave reminders about edge cases
Review Execution Order
Verify that tasks execute in the correct order:
- Check connections between tasks
- Ensure dependencies are properly defined
- Verify that parallel branches merge correctly
- Confirm that conditional logic follows the expected paths
If a variable reference returns unexpected data, trace it back to its source. Click on the producing task and check its Preview tab to see exactly what data it output.
Common Error Messages
Errors are a normal part of building workflows. When something goes wrong, the system shows you a message explaining what happened. Here are the most common errors you might see and how to fix them.
When you see an error, take a breath. The error message is trying to help you find the problem. Focus on the main message and ignore any technical codes you do not recognize.
"Missing required input variable"
What you see: An error mentioning a missing variable, like borrower_id.
What this means: The workflow needs a piece of information to run, but that information was not provided. Think of it like a form asking for your email address but you left it blank.
How to fix it:
- Go back to the execution form (when you click Play)
- Look for any empty fields that should have values
- Fill in the missing information and run again
"Cannot resolve variable path"
What you see: An error saying a variable path could not be found, sometimes showing what you typed and what options are actually available.
What this means: The workflow is looking for data in a specific location, but it cannot find it. This usually happens because of a typo. For example, you might have typed scroe instead of score.
How to fix it:
- Click on the task that failed
- Open the Advanced tab in the Properties Panel
- Check the variable names in your mappings
- Use the variable picker (the dropdown that shows available variables) to select the correct option instead of typing manually
"Failed to connect to external service"
What you see: A connection error mentioning a URL or external service.
What this means: The workflow tried to reach another system (like a credit bureau or data provider) but could not connect. This is often temporary.
How to fix it:
- Wait a moment and try running the workflow again
- If it keeps failing, the external service might be down - try again later
- Double-check that the URL in your task configuration is correct
"Task execution exceeded time limit"
What you see: A timeout error indicating the task took too long.
What this means: The task was waiting for a response but it took longer than allowed. This can happen when external services are slow or when requesting large amounts of data.
How to fix it:
- Click on the task that timed out
- Open the Advanced tab
- Look for the timeout setting and increase it (try doubling it)
- Run the workflow again
- If it still times out, the external service may be experiencing issues
"Expected number but received string"
What you see: A type mismatch error, often mentioning what was expected versus what was received.
What this means: A task expected one type of data (like a number) but got something different (like text). For example, the number 750 and the text "750" look similar but are treated differently.
How to fix it:
- Click on the task that failed
- Check the Preview tab of the previous task to see what data it produced
- If the data looks correct but is the wrong type, add a Transform task before this one to convert the data
- If you need help with transforms, see the Transform task documentation
Common Issues
Missing Required Inputs
Symptom: Task fails with "missing required input" error
Solutions:
- Open the task's Advanced tab and check all input mappings
- Verify the source variable exists and contains data
- Check for typos in variable names or paths
- Ensure the producing task executed successfully
Connection Errors
Symptom: Task fails with connection or network error
Solutions:
- Verify the external service is available
- Check that authentication credentials are valid
- Review rate limits if making many requests
- Try running the task again (transient network issues)
Timeout Errors
Symptom: Task fails with timeout error
Solutions:
- Increase the task timeout in the Advanced tab
- Check if the external service is responding slowly
- Simplify the request if possible
- Consider breaking into smaller operations
Invalid Data Format
Symptom: Task fails with data validation or parsing error
Solutions:
- Check that input data matches expected types
- Review the data structure in the Preview tab
- Verify date formats, number formats, and string lengths
- Check for null values where data is expected
Conditional Logic Not Working
Symptom: Workflow takes unexpected path at decision points
Solutions:
- Review the condition expression in the decision task
- Check the actual values being compared (use Preview tab)
- Verify comparison operators are correct
- Test with different input values to isolate the issue
Testing Best Practices
Create Test Scenarios
Before testing, prepare scenarios covering:
- Happy path: Normal execution with valid data
- Edge cases: Boundary values, empty fields, maximum lengths
- Error conditions: Invalid data, missing values, service unavailable
Document Test Results
Keep track of your testing:
- Note which scenarios passed or failed
- Record the input values used
- Document any issues discovered
- Mark areas that need additional testing
Test Before Publishing
Always run a complete test before publishing:
- Execute the workflow with representative test data
- Verify all paths through the workflow
- Check that outputs contain expected values
- Confirm error handling works correctly
Testing in the Workflow Builder uses the same backend as production, so test results accurately reflect how the workflow will behave when published. However, be mindful of any external services or data sources that might be affected by your test executions.