Use tags to control which parts of a test run
In real-world automation, not every test should run everywhere or all the time. The Tag Test step allows your flow to label a test or portion of a flow with one or more tags. These tags can then be used to decide which branches or test cases should execute in a given run, based on conditions you choose outside the flow, like CI/CD configuration, environment, or test recipe.
This gives you powerful control over how and when tests execute, letting you reuse flows for different contexts without duplicating logic.
Why tagging matters
Automation flows often grow to include multiple scenarios, conditions, or environment-specific logic. Without tagging, you might need:
Separate flows for each environment
Manual deletion or duplication of steps
Hardcoded conditionals that are hard to maintain
Tagging lets you run only what you need, when you need it, without altering the test itself. It keeps your automation clean and adaptable.
Typical use cases
Environment-specific tests
You might have tests that only make sense in development or staging, such as feature flag checks, preview pages, or experimental APIs. By tagging those tests, your CI/CD pipeline or recipes can ensure they only run in the right environment.
Selective coverage
Large test packs often contain slow but deep scenarios and fast smoke checks. Tags let you categorize tests so you can run:
Fast checks on every commit
Full suites on nightly runs
Feature-specific tests during development
This gives you better control over test scope without duplicating flows.
Multiple behaviours in one flow
Sometimes a flow covers variants of the same journey. For example:
A login flow with and without multifactor authentication
A purchase path with multiple payment methods
A checkout in different locales
Tags let you keep these variants in one place while choosing which to run based on context.
How it works
When the Tag Test step executes:
You assign one or more tags to the test or branch
The tag becomes part of the test’s metadata
External controls (CI/CD, recipe settings, run options) decide which tags should run
Only tagged tests or branches execute when invoked
This decouples the flow content from the logic that chooses what to execute, making your packs:
Easier to maintain
More flexible
More reusable across contexts
Powerful combinations with other systems
Tags become especially powerful when used with:
CI/CD — decide which tags to run based on branch, environment, or event
Recipes — define combinations of runs that include or exclude specific tags
Environment variables — dynamically control test scope
Parallel runners — distribute tagged subsets for faster execution
For example:
Tag a subset as smoke for quick feedback
Tag another as regression for nightly runs
Tag tests that only run on staging or feature branches
Use ci-cd config to include or exclude tags per pipeline
This gives your automation full control and precision.
Keep one flow for many uses
Instead of juggling separate flows for every variant, tests, and environment, you can:
Use a single source of truth
Assign meaningful tags
Drive execution from outside the test
This reduces duplication, improves clarity, and makes your automation pack easier to understand and evolve over time.
Using Tag Test helps you control scope without losing coverage, giving you both flexibility and focus in your testing strategy.