Maestro Overview
Maestro Framework Examples
Good Use Cases
- Creating web load or stress tests (using request configuration exported from Postman)
- Writing books or pieces of apps using AI
- Performing research using AI
- Orchestrating data transfers or migrations
- Publishing to online or social media platforms
- Automatic invoicing
- Administrative automation
- Keeping servers up to date
- Orchestrating inter-system communications
- Orchestrating multiple QA or benchmark tests
- Creating HTTP triggered APIs to launch Maestro automations (v2)
- Creating forms with drag and drop to retrieve user input for APIs (v2)
Poor Use Cases
- Creating websites
- Creating any app with an interactive user interface
---
Maestro Framework Technical Overview
Definitions
- Sensitive keys: Can't be written to disk.
- *Path: These are JSON paths always.
- State: Lives in memory as a dictionary and is written to / read from JSON.
- Constant: Lives in a file in Constants folder.
All files from this folder are read at startup (filename is the constant name) and are immutable during app run.
- Errors: First error is written to "appError" key in the state and persisted to a local file, appError.json.
An error will terminate the application flow.
Templates
- #@<jsonPath>@ to reference something
- If reference is to an array, levelNTemplate (starting with N=2) will be used to process each object in the array, where N = the level inside the nested structure
- Strings are encoded according to the file format, e.g. HTML or CSV; use TXT to avoid encoding