TDM Data Behavior in Orchestrations

Overview

This article explains how Test Data Management (TDM) datasets behave within a single orchestration execution. When an orchestration runs multiple test cases, data written to a TDM data source by an early test case is not immediately available to subsequent test cases in the same run. This is because the dataset is not reloaded during the execution.

How It Works

TDM datasets are loaded into memory once at the start of an orchestration's execution. Any updates made to the TDM data source at runtime by one script (for example, writing an output value) are not reloaded for subsequent scripts in the same orchestration. As a result, later scripts will continue to read the data that was initially loaded, not the updated values.

Limitations

There is no supported mechanism to dynamically refresh or reload a TDM dataset at runtime within the same orchestration execution.

Recommended Approaches

To share data between tests during a single orchestration run, consider the following approaches:

  1. Use Global Variables: Store dynamically generated values in fze.global variables in the initial scripts. Subsequent scripts can then consume these variables directly. This is the most reliable approach for passing data generated during execution.
  2. Split the Orchestration: Divide the workflow into multiple orchestrations. Run the first orchestration to execute the scripts that generate and persist the data. Then, trigger a second, separate orchestration that contains the scripts needing to consume the updated data. The new orchestration will load the updated TDM dataset at startup.
  3. Use the Set Variable Action: Instead of mapping data directly, use the 'Set Variable' action and select the TDM option to fetch a value from the TDM dataset.