Skip to main content

🏁 Maestro — Automotive Test Automation Framework

Maestro consolidates SSH, ADB, bench power control, ETFW, DLT logging, serial consoles and Windows camera capture into a single browser-based dashboard. Non-technical users design test cases with drag-and-drop; engineers extend it through a hot-reloadable plugin system.

🚀 Quick start

# Requirements: Python 3.10+ (3.11.9 recommended), Node.js 18+

cd maestro
pip install -r requirements.txt      # or: pip install poetry && poetry install
python app.py

app.py installs anything missing, builds the React frontend on first run, starts the FastAPI backend on http://localhost:8000 and opens your browser. That's it.

URL What
http://localhost:8000 Maestro dashboard
http://localhost:8000/api/docs Interactive API documentation (Swagger)
http://localhost:8000/metrics Prometheus metrics

✨ Highlights

  • Drag-and-drop test designer (list + visual canvas) with pre-built step templates for SSH, ADB, power, ignition, ETFW, DLT, camera and serial console. Reorder steps freely — including inside parallel groups and on the canvas.
  • Run Targets: run a test case / scenario / suite Local or on a saved remote (RDP / domain-joined) host over SSH — chosen per test or at run time.
  • Registered scripts: register a bench script once (e.g. power_control.py) with its subcommands; each subcommand becomes a drag-and-drop palette item that runs python power_control.py <subcommand>.
  • Template Manager: create, edit and delete your own palette templates and register scripts from a dedicated page.
  • Execution engine: serial / parallel / step-by-step modes, retry with exponential backoff, IF/THEN conditional jumps, loops, parallel groups, per-device resource locking, sandboxed user scripts.
  • Authorship & integrity: every test case records who created/last-edited it (preserved across import/export); saved cases are read-only until you unlock.
  • Live monitoring over WebSocket: step status, logs, pause/resume/stop.
  • Reports: Allure-style HTML per run, plus one aggregated report per suite/scenario run, with timelines, artifacts and report diffing.
  • Scheduling: run a test case, scenario or whole suite once / daily / weekly / cron, with an optional start-from / run-until active window.
  • Enterprise security: AES-256-GCM credential vault, 5-role RBAC, audit log.
  • Observability: structured JSON logs, Prometheus metrics, adapter health.
  • Plugin system: manifest-based adapters, enable/disable, hot reload, custom plugins in data/plugins/.
  • Self-contained packaging: bundle adb platform-tools + ffmpeg into the PyPI wheel and a one-folder Windows installer (see INSTALL.md).

🧪 Development

# Backend tests
python -m pytest tests/

# Frontend dev server (proxies API to :8000)
cd frontend && npm install && npm run dev

# Frontend tests & build
npm run test && npm run build

🐳 Docker

docker compose -f docker/docker-compose.yml up --build

📚 Documentation

📄 License

MIT — see LICENSE.

Metadata

Release files for maestro-automation 2.2.5

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distribution (wheel)

Table of built distributions (wheels) for maestro-automation 2.2.5
File Interpreter ABI Platform
maestro_automation-2.2.5-py3-none-any.whl Python 3 none any Details

Release files / maestro_automation-2.2.5-py3-none-any.whl

Download URL maestro_automation-2.2.5-py3-none-any.whl
Size 521.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
56d9b0f2ee477e7c0d21a6d02d73a6a3eac46db23b41fe187fbcdbc731d994b7
BLAKE2b-256 checksum
How to use checksums
9e88788780f5ec60c61119bdd989730ae66b016a5c524c8bd772d8f634c4465f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.11.9

Release history Release notifications | RSS feed

This release

2.2.5 This release

1 release file

2.2.4

1 release file

2.2.3

1 release file

2.2.2

1 release file

2.2.1

1 release file

2.2.0

1 release file

2.1.5

1 release file

2.1.4

1 release file

2.1.3

1 release file

2.1.2

1 release file

2.1.1

1 release file

2.1.0

1 release file

1.1.1

2 release files

1.1.0

2 release files

1.0.9

2 release files

1.0.8

2 release files

1.0.7

2 release files

1.0.6

2 release files

1.0.5

2 release files

1.0.4

2 release files

1.0.3

2 release files

1.0.2

2 release files

1.0.1

2 release files

1.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page