Test Garden Documentation

Welcome to the official documentation for Test Garden (testgarden.dev), the zero-config, visual End-to-End (E2E) testing platform. Test Garden allows you to record user interactions on your live website inside an interactive workspace and replay them automatically to ensure your website is working flawlessly.

How it works

Traditional testing libraries like Playwright or Cypress require setting up local Node.js environments, writing brittle selectors, and maintaining complicated configuration files.

Test Garden simplifies this by using an iframe-based parent-child communication model. You connect your website by placing a lightweight script tag in your HTML header. When you open a test workspace, your dashboard loads your site inside an iframe. The script communicates with the parent dashboard via secure window.postMessage handshakes, streaming user clicks, keystrokes, and scrolls in real-time, allowing you to build assertions visually without writing a single line of test code.

Guides

Quickstart

Learn how to get up and running with Test Garden in under 5 minutes.

Read more

Script Installation & Setup

Understand how to connect properties and configure Content-Security-Policy (CSP) headers.

Read more

React & Next.js Integration

Avoid SSR hydration errors by using our framework-specific script wrapper.

Read more

Local Sandbox Development

How to bypass browser Mixed Content restrictions to develop and record tests offline.

Read more

Core Concepts

Websites & Properties

Learn how the website registration model functions, including verification status chips and plan capacity limits.

Recorder Workspace

Explore the E2E visual recorder iframe, floating toolbar overlay, selector generation, and text input debouncing.

Playback & Assertions

Learn about programmatically playing back actions, wait state settings, OTP/Captcha pauses, and style/text verifications.

Test Runs & Auditing

Audit replayed executions step-by-step, view details in the audit drawer, and set up background tab failure notifications.

Was this page helpful?