Skip to content

Handling Workflow Dependencies

MarkAbrams edited this page Feb 1, 2024 · 9 revisions

A workflow usually has dependencies on one or more external services. For example, a workflow may read a message from a Service Bus queue using a trigger, or read data from a SQL Server database using a SQL Server connection, or send an email using a SMTP connection. To test a workflow in an isolated environment, these dependencies need to be removed and replaced with something else so that:

  • a workflow can be run on demand by the test framework, using different request payloads to test different paths and scenarios in the workflow.
  • a connection's inputs can be validated by a test case.
  • a connection's outputs can be configured in a test case to simulate specific responses that test different scenarios within the workflow.

And all of this must be done so that the functionality and behaviour of the workflow is not affected.

The testing framework will automatically remove the following dependencies when a workflow is tested:

The testing framework will also remove any retry policies for actions to improve the run-time execution time for the tests.

These features are described in the next sections.

Clone this wiki locally