Project configuration
Configure your Maestro workspace with config.yaml for test suite settings.
The config.yaml file acts as the central "brain" of your Maestro workspace. While it is optional, it becomes essential when your project grows, allowing you to define global rules for your test suite, manage environment variables, and configure platform-specific behaviors.
When do I need a config file?
If you are just running a single Flow file locally, you don't need a configuration. You should create a config.yaml if:
You have a deep directory structure and need to define test discovery.
You need to handle environment variables across multiple Flows.
You want to configure cloud-specific behaviors like disabling system animations.
Setting up your configuration
Default behavior and hierarchy
When you point Maestro at a directory, it looks for a file named config.yaml in the root of that directory. If no --config flag is provided and the file is missing, Maestro runs with default settings.
Configure where flows are stored
Use the flows block to define where in your repository the test flows are stored. Typically this will be a single line, but the config permits for a list of locations. Simple globbing syntax is permitted here, where * means the contents of a folder, but ** includes all subfolders too.
# config.yaml
flows:
- e2e/*
- smoke/**Working with multiple configs
While config.yaml is the default, you can create multiple configuration files for different scenarios (e.g., smoke-config.yaml or ci-config.yaml). To run a test suite with a specific configuration, use the --config flag when running the tests with the Maestro CLI:
Next steps
If you need a full list of every available key and configuration available, access the Workspace configuration reference page.
To plan your test architecture access Design your test architecture. On the other hand, if you need to organize your tests, learn how to use the flows key in your config to manage Test discovery and tags.
Last updated