Untested flows
Why is this an issue?
Flows without automated tests may contain bugs that are only discovered in production. Flow testing:
Verifies flows work as expected
Catches regressions when flows are modified
Improves confidence in deployments
Documents expected behavior
Examples
Example of incorrect setup (flow without test):
force-app/
├── main/default/flows/
│ └── Create_Case_Flow.flow-meta.xml
└── (no corresponding test)
Example of correct setup (flow with test):
force-app/
├── main/default/flows/
│ └── Create_Case_Flow.flow-meta.xml
└── main/default/flowTests/
└── Create_Case_Flow_Test.flowTest-meta.xml
How can I fix violations?
Create flow tests using Salesforce's Flow Testing framework:
Create a FlowTest: In Setup, navigate to Flow Tests and create a new test.
Define test scenarios: Specify input values and expected outcomes.
Run tests: Execute tests to verify flow behavior.
Alternatively, test flows via Apex:
@IsTest
static void testMyFlow() {
// Set up test data
Map<String, Object> inputs = new Map<String, Object>();
inputs.put('recordId', testRecord.Id);
// Run the flow
Flow.Interview.My_Flow flow = new Flow.Interview.My_Flow(inputs);
flow.start();
// Verify results
Assert.areEqual(expected, flow.getVariableValue('outputVar'));
}
Resources
