testing-workflow
A layer-by-layer testing guide covering database, backend, frontend, and E2E validation.
Install
mkdir -p .claude/skills/testing-workflow && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/473" && unzip -o skill.zip -d .claude/skills/testing-workflow && rm skill.zipInstalls to .claude/skills/testing-workflow
Activation
This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.
Comprehensive testing workflow for E2E, integration, and unit tests. Use when testing applications layer-by-layer, validating user journeys, or running test suites.Key capabilities
- →Validates SQL queries and RLS policies
- →Tests Edge Functions and API endpoints
- →Verifies frontend component rendering
- →Executes Playwright E2E user journey tests
How it works
The skill follows a layer-by-layer testing approach, starting from database validation and moving through backend functions to frontend components and full E2E journeys.
Inputs & outputs
When to use testing-workflow
- →Verify SQL and RLS policies
- →Test edge functions and API endpoints
- →Validate component rendering
- →Run Playwright E2E suites
About this skill
Testing Workflow Skill
Purpose
Guide comprehensive testing following the layer-by-layer approach. Test systematically from database → backend → frontend → E2E.
Testing Philosophy
DON'T: Test entire system at once DO: Test each layer independently, bottom-up
Layer 1: Database ✅ → SQL queries
Layer 2: Backend ✅ → API/Edge Functions
Layer 3: Frontend 🟡 → Component testing
Layer 4: E2E 🔴 → Complete user journeys
Quick Navigation
🗄️ Layer 1: Database
Test SQL, RLS policies, migrations
- See DATABASE.md
- Quick SQL tests, RLS verification, policy checks
⚙️ Layer 2: Backend
Test Edge Functions, APIs
- See BACKEND.md
- Function deployment, secrets, logs
🎨 Layer 3: Frontend
Test components, UI
- See FRONTEND.md
- Component rendering, TypeScript, build
🚀 Layer 4: E2E
Test complete user journeys
- See E2E.md
- Playwright tests, full workflows
Quick Test Commands
Pre-Commit Check (30 sec)
pnpm tsc && pnpm build
Full Test Suite (5 min)
pnpm tsc && pnpm build && npx playwright test
Watch Mode
npx playwright test --ui
Testing Layers
| Layer | What | Tools | Time |
|---|---|---|---|
| 1. Database | SQL, RLS | Supabase, psql | 2 min |
| 2. Backend | Edge Functions | curl, Supabase CLI | 3 min |
| 3. Frontend | Components | TypeScript, Build | 2 min |
| 4. E2E | User journeys | Playwright | 5 min |
Pre-Deployment Testing
Complete Test Run (15 min)
# 1. Type check
pnpm tsc --noEmit
# 2. Build
pnpm build
# 3. Start dev server (background)
pnpm dev &
# 4. Manual smoke test
# - Visit /pitch-deck-wizard
# - Send message
# - Verify response
# 5. Run E2E tests
npx playwright test
# 6. Check production build
pnpm preview
Production Readiness Checklist
Code Quality
-
pnpm tsc --noEmit→ 0 errors -
pnpm lint→ 0 warnings -
pnpm build→ succeeds - No
console.login production code
Functionality
- Wizard works (AI responds)
- Progress tracking (0-100%)
- Deck generation works
- All slides render
Backend
- Edge Functions deployed
- Secrets configured
- Database migrations applied
- RLS enabled
Testing
- Manual tests pass
- E2E tests pass
- No console errors
- No network errors
Common Issues
Tests Fail Due to RLS
-- Set test presentation public
UPDATE presentations
SET is_public = true
WHERE id = 'd4a27c1c-8b2d-48a9-99c9-2298037e9e81';
Playwright Timeout
// Increase timeout
await page.waitForSelector('element', { timeout: 30000 });
TypeScript Errors
# Find all errors
pnpm tsc --noEmit | grep "error TS"
Resources
- Daily Checklist:
lovable-plan/management/903-DAILY-TESTING-CHECKLIST.md - Full Strategy:
lovable-plan/docs/004-TESTING-STRATEGY-AND-IMPROVEMENTS.md - Playwright Docs: https://playwright.dev
Start testing: Begin with DATABASE.md for Layer 1
When not to use it
- →When the application does not have a defined testing framework
- →When performing manual testing without automated suites
Prerequisites
Limitations
- →Requires manual configuration of test environments
- →E2E tests are dependent on application state
How it compares
It enforces a systematic bottom-up testing philosophy rather than testing the entire system as a single unit.
Compared to similar skills
testing-workflow side by side with the closest alternatives in the catalog.
| Skill | Installs | Updated | Safety | Difficulty |
|---|---|---|---|---|
| testing-workflow (this skill) | 16 | 9mo | Review | Intermediate |
| code-review | 0 | 6mo | No flags | Intermediate |
| dependency-upgrade | 26 | 5mo | Review | Intermediate |
| playwright-pro | 8 | 3mo | Review | Intermediate |
Try saying
Example prompts that trigger this skill in your AI assistant.
More by amo-tech-ai
View all by amo-tech-ai →You might also like
code-review
jonatron55
Instructions for reviewing changes and ensuring quality before completion. Use when asking for a review or before committing changes.
dependency-upgrade
wshobson
Manage major dependency version upgrades with compatibility analysis, staged rollout, and comprehensive testing. Use when upgrading framework versions, updating major dependencies, or managing breaking changes in libraries.
playwright-pro
alirezarezvani
Production-grade Playwright testing toolkit. Use when the user mentions Playwright tests, end-to-end testing, browser automation, fixing flaky tests, test migration, CI/CD testing, or test suites. Generate tests, fix flaky failures, migrate from Cypress/Selenium, sync with TestRail, run on BrowserStack. 55 templates, 3 agents, smart reporting.
e2e-test-developer
eclipse-che
Comprehensive E2E test development guidance for Eclipse Che / Red Hat OpenShift Dev Spaces. Use this skill when writing, modifying, or reviewing TypeScript Mocha Selenium tests, page objects, utilities, or test infrastructure. Provides code style rules, patterns, dependency injection setup, and best practices.
positron-pr-helper
posit-dev
Generates well-structured PR bodies with dynamically fetched e2e test tags
s2-lint
antvis
After modifying S2 project code, you must run lint to ensure there are no errors, avoiding issues when pushing to git.