Skip to content

Guide

The guide walks through using Spectre end-to-end:

  1. Installation — how to consume Spectre while it's pre-release.
  2. Getting started — write your first test against a Compose Desktop window.
  3. The automator — the mental model: surfaces, the semantics tree, queries vs. interactions, and why there's no auto-wait.
  4. Finding nodes — selector reference.
  5. Driving input — clicks, swipes, scrolling, typing, screenshots.
  6. Experimental input coordination — serialize real input across participating JVMs, including JUnit and forced recovery.
  7. Synchronization — wait helpers and the EDT rule.
  8. JUnit integration — ComposeAutomatorExtension (JUnit 5) and ComposeAutomatorRule (JUnit 4).
  9. Running on CI — JVM flags, xvfb, macOS helper JVMs, and recording tags.
  10. Recording and screenshots — region capture, window-targeted video, and native still-window screenshots.
  11. Cross-JVM access — driving a UI hosted in another JVM.
  12. Agent attach — attach to a running Compose JVM (preinstalled core or inject).
  13. Capability matrix — ops × transports × platforms, with fail-closed CI evidence for every Supported cell.
  14. CLI — interactive spectre command and MCP server.
  15. Atomic capture — window PNG + versioned tree for agents.
  16. Compose Hot Reload — optional reload settle wait and key invalidation when the target runs under HR (CLI/MCP only).
  17. IntelliJ-hosted Compose — Jewel-on-IntelliJ tool windows.
  18. Troubleshooting — platform-specific gotchas.

If you're new to Spectre, start with Installation and Getting started, then read The automator before dipping into the per-topic pages.