Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
10k-digital avatar

Testing

  • 6 installs
  • 15 repo stars
  • Updated June 10, 2026
  • 10k-digital/lovable-claude-code

testing is a Claude Code skill that runs browser-automated end-to-end tests against a Lovable app's Preview mode and manages test plans, profiles, and results.

About

testing is a Claude Code skill that runs end-to-end tests against a Lovable app in Preview mode using browser automation. It scaffolds a standardized test workspace of plans, test-user profiles, and results, executes plans step by step against the live preview, and resyncs plans as the codebase changes. A developer uses it to verify Lovable features against the running app after implementing or deploying them.

  • Tests Lovable apps in Preview mode via browser automation
  • Manages standardized test plans, profiles, and results under .claude/lovable-claude/test/
  • Keeps test plans in sync with the codebase as features are added, with smoke/changed/all run modes

Testing by the numbers

  • 6 all-time installs (skills.sh)
  • Ranked #1,591 of 2,153 Testing & QA skills by installs in the Skillselion catalog
  • Data as of Jul 28, 2026 (Skillselion catalog sync)
At a glance

testing capabilities & compatibility

Capabilities
e2e testing · preview testing · test plan management
Works with
supabase · github · chrome
Use cases
testing · ci cd
From the docs

What testing says it does

Tests the running app in Lovable Preview mode via browser automation.
SKILL.md
Manages standardized test plans, test profiles, and results in .claude/lovable-claude/test/.
SKILL.md
npx skills add https://github.com/10k-digital/lovable-claude-code --skill testing

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs6
repo stars15
Last updatedJune 10, 2026
Repository10k-digital/lovable-claude-code

What it does

Run browser-automated end-to-end tests against a Lovable app in Preview mode and track results.

Who is it for?

verifying Lovable features end-to-end against the running preview app

Skip if: unit-test-only setups or non-Lovable apps without a preview URL

When should I use this skill?

running /lovable:test-init, test-run, or test-sync, or after implementing a feature when test plans exist

What you get

End-to-end test plans executed against the Lovable preview with recorded pass/fail results and coverage kept in sync.

By the numbers

  • 4 run modes (all, changed, smoke, single plan)
  • preview token valid 7 days

Files

SKILL.mdMarkdownGitHub ↗

Preview Testing Skill

This skill tests Lovable apps in Preview mode - the live, running version of the app - using Claude's browser automation. It manages a standardized test workspace at .claude/lovable-claude/test/ containing test plans, test user profiles, and results.

When to Activate

1. Preview testing is enabled in CLAUDE.md (Preview Testing → Status: on) 2. User runs testing commands:

  • /lovable:test-init - Test wizard (scaffold workspace, create test plans)
  • /lovable:test-run - Execute test plans in Preview mode
  • /lovable:test-sync - Resync test plans with new/changed features

3. After implementing a feature (when test workspace exists):

  • Suggest adding/updating unit tests AND test plans for the new feature
  • If test_after_implementation: on, run the affected test plans automatically

4. After auto-deploy (yolo mode integration):

  • If test_after_deploy: on, run smoke-level test plans after deployment

5. User mentions preview testing in any form

How Preview Access Works

Lovable Preview is the running app inside the Lovable editor. There are two ways to access it for testing:

Method 1: Logged-in Browser (simplest)

If the user is logged in to Lovable in Chrome (Claude in Chrome extension), navigate directly to the Lovable project preview. No token needed.

Method 2: Tokenized Preview URL (works without login)

Lovable exposes a shareable preview URL with an access token:

https://preview--[app-name].lovable.app/?__lovable_token=[JWT]
  • The user gets this URL by opening their Lovable project in preview mode and clicking the arrow icon at the top, next to the address bar - this opens the preview in a new tab with the token in the URL.
  • The token is valid for 7 days. After expiry, ask the user to capture a fresh URL.
  • The token is a credential - never commit it to git. Store it in .claude/lovable-claude/test/preview-token.local (gitignored).

See references/preview-access.md for full procedures: capture, storage, expiry detection, and re-prompting.

Access Priority

1. Valid stored token → use tokenized preview URL (most reliable, no login dependency) 2. No/expired token + user logged in to Lovable in Chrome → use logged-in browser session 3. Neither → ask the user to either log in or provide a fresh preview URL with token 4. Fallback: provide manual test checklist for the user to run themselves (never block)

Test Workspace Structure

All testing artifacts live in a standardized folder in the user's project:

.claude/lovable-claude/test/
├── README.md              # Explains the workspace (generated)
├── test-config.json       # Preview URL (no token), settings, coverage state
├── preview-token.local    # Preview token ONLY - gitignored, 7-day validity
├── plans/                 # Test plans (one file per plan)
│   ├── TP-001-user-signup.md
│   ├── TP-002-create-project.md
│   └── ...
├── profiles/              # Test user profiles (test accounts, personas, data)
│   ├── default.json
│   └── admin.json
└── results/               # Test run results (one file per run)
    └── 2026-06-10-TP-001.md

See references/test-plan-format.md for the standardized formats of every file type.

Core Functionality

1. Test Wizard (/lovable:test-init)

Guided creation of the test workspace: 1. Scaffold .claude/lovable-claude/test/ structure 2. Capture preview URL + token (or detect logged-in browser) 3. Scan the codebase to identify the app's main user actions (routes, forms, auth flows, CRUD operations, edge function calls) 4. Suggest test plans for each main action, ask guided questions to refine them 5. Create test user profiles 6. Write standardized test plan files 7. Record coverage state (git commit hash) in test-config.json

See references/test-wizard.md for the complete wizard procedure.

2. Test Execution (/lovable:test-run)

Execute test plans against the Preview app via browser automation:

  • Navigate to preview (tokenized URL or logged-in session)
  • Execute each test plan step-by-step (clicks, form fills, navigation)
  • Verify expected results (UI state, console errors, network responses)
  • Write results to results/ and report a summary

Modes:

  • --all: run every test plan (planned end-to-end run)
  • --changed: run only plans affected by recent changes (after each implementation)
  • --smoke: run only plans tagged smoke
  • [plan-id]: run one specific plan

See references/test-execution.md for browser automation workflows.

3. Test Resync (/lovable:test-sync)

Keep tests in sync with the codebase as features are added: 1. Compare current codebase against last_synced_commit in test-config.json 2. Identify new/changed features (new routes, components, edge functions, migrations) 3. Map them against existing test plans → find coverage gaps 4. Suggest new test plans and updates to stale ones 5. Also check unit test coverage gaps (if the project has a test framework) 6. Update test-config.json with the new sync point

4. Continuous Test Maintenance (after each feature)

When preview testing is enabled and Claude implements a new feature in the project:

1. Add/update unit tests for the new code (if the project has a test framework) 2. Add/update test plans covering the new user-facing behavior 3. If test_after_implementation: on → run the affected test plans in Preview immediately 4. If test_after_implementation: off → remind the user: "New feature lacks a test plan - run /lovable:test-sync to update coverage"

This keeps the test suite alive instead of letting it rot.

Configuration in CLAUDE.md

The skill reads these fields from the user's CLAUDE.md:

## Preview Testing Configuration

- **Status**: on
- **Preview URL**: https://preview--my-app.lovable.app
- **Access Method**: token   # token | browser-login
- **Token Captured**: 2026-06-10 (valid ~7 days)
- **Test After Implementation**: on   # run affected plans after each feature
- **Test After Deploy**: smoke        # off | smoke | all - run after yolo auto-deploy
- **Last Test Sync**: [commit hash]

Configuration options:

  • Status: Enable/disable preview testing entirely
  • Access Method: token (tokenized preview URL) or browser-login (user logged in to Lovable)
  • Test After Implementation: Run affected test plans automatically after implementing each feature
  • Test After Deploy: What to run after yolo auto-deploy (off, smoke, or all)

The actual token is NEVER in CLAUDE.md - only in preview-token.local.

Integration with Other Features

With Yolo Mode (auto-deploy)

When both yolo mode and preview testing are enabled, the post-deploy verification gains a fourth level:

  • Level 1-3: existing deployment verification (logs, console, functional) - see yolo skill
  • Level 4: Preview test plans - run smoke (or all) test plans against the Preview app per Test After Deploy setting

With Auto-Push

After auto-push of frontend changes (which sync to Lovable in 1-2 minutes), wait for sync before running preview tests so the Preview reflects the pushed code. See references/test-execution.md → "Sync wait".

With /lovable:init

/lovable:init asks about preview testing (Question 8.7) and can capture the preview URL/token during setup, then offers to run /lovable:test-init to build the initial test plans.

Error Handling

Golden rule: never block the user. Every automation failure has a manual fallback.

Token expired:

🔑 Preview token expired (captured [date], valid 7 days)

To capture a fresh one:
1. Open your Lovable project in preview mode
2. Click the arrow icon at the top, next to the address bar
3. Copy the URL from the new tab (contains ?__lovable_token=...)
4. Paste it here

Or log in to Lovable in Chrome and I'll use your session instead.

Browser automation unavailable:

❌ Browser automation unavailable (Claude in Chrome extension required)

Manual test checklist for [plan-id]:
[numbered steps + expected results from the plan]

Report results back and I'll record them in results/.

Preview app shows error / blank page:

  • Capture console errors and screenshot description
  • Check if a deploy/sync is still in progress (wait + retry once)
  • Report findings with suggested fixes - do not mark tests passed

Test failure:

  • Record exact step that failed, expected vs actual, console/network errors
  • Write a FAIL result file
  • Offer to investigate and fix the underlying code

Reference Files

1. `references/preview-access.md` - Capturing, storing, and validating preview URLs and tokens; access priority; expiry handling 2. `references/test-plan-format.md` - Standardized formats for test plans, profiles, config, results, and the workspace README 3. `references/test-wizard.md` - Codebase scanning for main user actions; guided question flow; plan generation 4. `references/test-execution.md` - Browser automation workflows for executing plans in Preview; verification; results reporting

---

This skill closes the loop: code → push → deploy → test in the real running app → fix → repeat.

Related skills

FAQ

How does testing access the Lovable preview?

Via a logged-in Chrome session or a tokenized preview URL (valid 7 days), stored gitignored and never committed.

What run modes does it support?

--all, --changed, --smoke, or a specific plan id.

Testing & QAtestingfrontend

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.