Testing
When & Why to Use This Skill
This Claude skill provides a comprehensive automated testing framework designed for modern full-stack applications. It streamlines the setup of isolated Neon database branches, high-performance unit and integration testing with Bun, and robust end-to-end browser automation using Playwright, ensuring high code quality and reliable deployments through isolated environments and automatic cleanup.
Use Cases
- Isolated Database Testing: Automatically create and manage schema-only Neon database branches for parallel test execution, preventing data collisions and ensuring clean state with TTL-based auto-cleanup.
- End-to-End Browser Automation: Implement Playwright tests to simulate real user interactions, validate complex UI workflows, and ensure visual consistency across different browser engines.
- High-Speed API Integration: Test API routes efficiently by importing handlers directly into Bun's test runner, allowing for rapid verification of backend logic without the overhead of full HTTP requests.
- Type-Safe Unit Testing: Leverage Bun's built-in test runner for fast, co-located unit tests that verify core business logic and maintain type safety using Zod and Drizzle-like schemas.
| name | testing |
|---|---|
| description | Complete testing setup with Neon database branching, Playwright browser tests, integration tests, and unit tests. Isolated branches with automatic TTL cleanup. |
Testing
Complete testing setup with Neon database branching, Playwright browser tests, integration tests, and unit tests. Isolated branches with automatic TTL cleanup.
Prerequisites
Complete these recipes first (in order):
Type-Safe Environment Configuration
Type-safe environment variable validation using Zod with a Drizzle-like schema API. Supports server/public fields, feature flags, either-or constraints, and client-side protection.
curl -H "Accept: text/markdown" https://fullstackrecipes.com/api/recipes/config-schema-setup
Neon + Drizzle Setup
Connect a Next.js app to Neon Postgres using Drizzle ORM with optimized connection pooling for Vercel serverless functions.
curl -H "Accept: text/markdown" https://fullstackrecipes.com/api/recipes/neon-drizzle-setup
Cookbook - Complete These Recipes in Order
Neon Test Branches
Create isolated Neon database branches for testing. Schema-only branches with auto-cleanup via TTL, test server orchestration, and environment variable management.
curl -H "Accept: text/markdown" https://fullstackrecipes.com/api/recipes/neon-test-branches
Unit Tests with Bun
Configure unit testing with Bun's built-in test runner. Fast, Jest-compatible syntax, co-located test files, and mocking support.
curl -H "Accept: text/markdown" https://fullstackrecipes.com/api/recipes/unit-tests
Integration Tests
Test API routes by importing handlers directly with Bun's test runner. Fast, reliable tests without HTTP overhead.
curl -H "Accept: text/markdown" https://fullstackrecipes.com/api/recipes/integration-tests
Browser Tests with Playwright
End-to-end browser testing with Playwright. Test user interactions, form validation, navigation, and visual feedback with full browser automation.
curl -H "Accept: text/markdown" https://fullstackrecipes.com/api/recipes/playwright-tests
Working with Tests
Testing strategy and workflow. Tests run in parallel with isolated data per suite. Prioritize Playwright for UI, integration tests for APIs, unit tests for logic.
curl -H "Accept: text/markdown" https://fullstackrecipes.com/api/recipes/using-tests