Represents the metadata associated with a flow test. Before you activate a
record-triggered, autolaunched, or Data Cloud-triggered flow, you can test it to verify
its expected results and identify flow run-time failures.
Parent Type
This type extends the
Metadata metadata type and inherits its
fullName field.
File Suffix and Directory Location
FlowTest components have the suffix .flowtest, and Salesforce stores them
in the flowtests folder.
Version
FlowTest components are available in API version 55.0 and later.
Special Access Rules
There are no additional access requirements that are specific to this type.
Fields
| description |
- Field Type
- string
- Description
- The description of the flow test, such as what it does
or how it works.
|
| flowApiName |
- Field Type
- string
- Description
-
Required.
The API name of the flow associated with
the flow test.
|
| flowTestDataSources |
- Field Type
-
FlowTestDataSource[]
- Description
- An array of data sources for the flow test of a record-triggered flow or an
autolaunched flow. This field is available in API
version 66.0 and later.
|
| flowTestFlowVersions |
- Field Type
-
FlowTestFlowVersion[]
- Description
- An array of flow versions that are associated with the flow test. This field is
available in API version 66.0 and later.
|
| isolatedObjectExternalKeys |
- Field Type
-
FlowTestIsolObjExtlKey[]
- Description
- An array of isolated objects and the key fields that uniquely identify each record for
the flow test of a record-triggered flow or an
autolaunched flow. This field is available in API
version 66.0 and later.
|
| label |
- Field Type
- string
- Description
-
Required.
The label of the flow test.
|
| testPoints |
- Field Type
-
FlowTestPoint[]
- Description
- An array of test points for the test.
|
| testType |
- Field Type
- FlowTestType (enumeration of type string)
- Description
-
Required.
Specifies whether the test contains
assertions. This field is available in API version 66.0
and later.Possible values are:
-
WithAssertion—The automated
comparison of the actual flow outcome with the
user-defined expected outcome that assertions
define.
|
FlowTestFlowVersion
Defines the flow
version for the flow test. This subtype is available in API version 66.0 and later.
| flowVersionNumber |
- Field Type
- string
- Description
- The version number of the flow version that’s associated with the flow test.
|
FlowTestDataSource
Defines the data source for a flow test of a record-triggered flow or an autolaunched flow.
This subtype is available in API version 66.0 and later.
| apexClass |
- Field Type
- string
- Description
-
Required.
The Apex class associated with the data source when
dataSourceType is ApexClass.
|
| dataSourceType |
- Field Type
- FlowTestDataSourceType (enumeration of type string)
- Description
-
Required.
The data source type for the flow test.Possible value is ApexClass.
|
FlowTestIsolObjExtlKey
Defines an external isolated object and the fields that identify unique records to test for a
record-triggered flow or an autolaunched flow. This subtype is available in API
version 66.0 and later.
| keyFields |
- Field Type
-
FlowTestExtKeyField[]
- Description
- The key fields that identify unique records to test. Don’t use fields of the lookup
data type.
|
| objectType |
- Field Type
- string
- Description
-
Required.
The object type of the isolated data to test.
|
FlowTestExtKeyField
Defines the external key fields that identify the unique records in isolated test data for a
record-triggered flow or an autolaunched flow. This subtype is available in API
version 66.0 and later.
| fieldName |
- Field Type
- string
- Description
-
Required.
The field API name to identify the unique records to test.
|
FlowTestPoint
Defines a flow test point that Salesforce evaluates when a flow test runs. Salesforce
evaluates each test point in the order that it’s
listed.
| assertions |
- Field Type
- FlowTestAssertion[]
- Description
- An array of assertions for the test.
|
| elementApiName |
- Field Type
- string
- Description
-
Required.
The element API names for the start of
the flow and the end of the flow.
Possible
values are:
|
| isUseMockOuput |
Reserved for future use. |
| parameters |
- Field Type
- FlowTestParameter[]
- Description
- An array of parameters for the test.
|
FlowTestAssertion
Defines an assertion for a test point that Salesforce evaluates when a flow test runs. If one
assertion evaluates to false, the test run fails.
| conditions |
- Field Type
- FlowTestCondition[]
- Description
- An array of conditions for an assertion.
|
| errorMessage |
- Field Type
- string
- Description
- If the associated condition evaluates to false, this custom message appears in Flow
Builder.
|
FlowTestCondition
Defines a condition for an assertion that Salesforce evaluates when a flow test runs. If one
condition evaluates to false, the assertion fails.
| leftValueReference |
- Field Type
- string
- Description
-
Required.
The reference to the flow resource that
the specified operator applies to.
|
| operator |
- Field Type
- FlowComparisonOperator (enumeration of type string)
- Description
-
Required.
The flow test uses this value to evaluate the resource reference in
the leftValueReference
field.Possible values are:
- Contains
- EndsWith
- EqualTo
- GreaterThan
- GreaterThanOrEqualTo
-
HasError—This value is available
in API version 64.0 and later.
-
In—This value is available in API
version 56.0 and later.
-
IsBlank—This value is available
in API version 61.0 and later.
- IsChanged
-
IsEmpty—This value is available
in API version 61.0 and later.
- IsNull
- LessThan
- LessThanOrEqualTo
- NotEqualTo
-
NotIn—This value is available in
API version 56.0 and later.
- StartsWith
- WasSelected
- WasSet
- WasVisited
|
| rightValue |
- Field Type
- FlowTestReferenceOrValue
- Description
- The value that the operator applies to the resource
reference in the leftValueReference
field.
|
FlowTestReferenceOrValue
Defines a specific value that the operator applies to the resource reference in flow test
assertions and
conditions.
| booleanValue |
- Field Type
- boolean
- Description
- Specifies a boolean value.
|
| dateTimeValue |
- Field Type
- dateTime
- Description
- Specifies a dateTime value.
|
| dateValue |
- Field Type
- date
- Description
- Specifies a dateValue value.
|
| elementReference |
Reserved for future use. |
| jsonValue |
- Field Type
- string
- Description
- Specifies a JSON value for the isolated test data
record. This field is available in API version 66.0 and
later.
|
| numberValue |
- Field Type
- double
- Description
- Specifies a number value.
|
| sobjectValue |
- Field Type
- string
- Description
- Specifies an sObject value.
|
| stringValue |
- Field Type
- string
- Description
- Specifies a string value.
|
| timeValue |
- Field Type
- time
- Description
- Specifies a time value.
|
FlowTestParameter
Defines parameters for the triggering record, flow path, and input variable in the Start test
point.
| leftValueReference |
- Field Type
- string
- Description
-
Required.
The name of the parameter. When
type is InputTriggeringRecordInitial or InputTriggeringRecordUpdated, the value
for leftValueReference must be
$Record. When
type is ScheduledPath, the
value for leftValueReference must
be ScheduledPathApiName.
|
| type |
- Field Type
- FlowTestParameterType (enumeration of type string)
- Description
-
Required.
The type of parameter. Possible
values are:
- InputTriggeringRecordInitial
- InputTriggeringRecordUpdated
-
InputVariable—This value is available in
API version 66.0 and later.
-
ScheduledPath—Available in API
version 56.0 and later.
|
| value |
- Field Type
- FlowTestReferenceOrValue
- Description
-
Required.
The value that the operator applies to
the resource reference in the
leftValueReference field.
|
Declarative Metadata Sample
Definition
The
following is an example of a FlowTest
component.
For isolated test data sample:
The following is an example package.xml that references the previous
definition.