Testing

andrelandgraf's avatarfrom andrelandgraf
6stars🔀1forks📁View on GitHub🕐Updated Jan 1, 1970

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.
nametesting
descriptionComplete 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
Testing – AI Agent Skills | Claude Skills