What is WrightTest?
WrightTest is a self-hosted web application for browser UI test automation built on Playwright. It provides a visual interface so testers can record, edit, run and schedule browser tests without writing TypeScript or JavaScript from scratch. For tests that go beyond what the recorder captures, steps can be edited manually or imported from an existing .spec.ts file.
Does WrightTest require Playwright knowledge to use?
Not for basic test creation. The recorder, step editor and assertions builder cover common flows without requiring Playwright knowledge. Understanding locators and Playwright's API becomes useful when debugging selector failures or editing complex steps manually.
How is WrightTest different from Selenium IDE?
Both tools offer a no-code recorder. WrightTest runs server-side inside Docker, uses Playwright's role-based locator strategy, includes a built-in scheduler, environment variable support, Telegram and Slack notifications, and exports tests as native Playwright .spec.ts files.
Can WrightTest tests be run in a CI/CD pipeline?
Yes, in two ways. The webhook endpoint accepts a project ID or test ID and queues the runs. Tests can also be exported as .spec.ts files and run with npx playwright test directly in the CI environment without WrightTest installed.
Does WrightTest support mobile browser testing?
WrightTest supports mobile device emulation using Playwright's built-in device descriptors. Tests can target iPhone 15, Pixel 7, iPad Pro and other devices. Emulation covers viewport size, device pixel ratio, user-agent string and touch event simulation.
How does the noVNC recorder work inside Docker?
The Docker setup includes a dedicated novnc container running Xvfb, x11vnc and noVNC. When a recording session starts, the backend launches playwright codegen with DISPLAY=:99, which renders Chromium onto the virtual display. noVNC streams that display to the browser via WebSocket.
Is WrightTest free?
WrightTest is free for personal, educational, research and internal team use. The source code is available on GitHub. Commercial resale or offering WrightTest as a public hosted SaaS service requires prior written permission. Check the LICENSE file before using it in a commercial product or managed service.
What happens to existing test data when updating WrightTest?
Existing projects, tests and run history are stored in a PostgreSQL volume that persists across container restarts and rebuilds. On startup the backend runs prisma migrate deploy, which applies only new migrations without modifying existing data.
Can I import an existing Playwright test into WrightTest?
Yes. The import feature accepts the contents of a .spec.ts file via the project page. The parser extracts page.goto, click, fill, press, selectOption and assertion calls into the visual step editor.
Are Playwright traces safe to open in the viewer?
Playwright traces are zip archives generated and stored on the WrightTest server. They contain DOM snapshots, network request logs, screenshots and console output from the test run. Teams working with sensitive internal systems should review what trace contents include before opening them through any external viewer URL.