AgentSkillsCN

testing

通过 Neon 数据库分支、Playwright 浏览器测试、集成测试以及单元测试,完善测试环境。隔离分支并自动执行 TTL 清理。

SKILL.md
--- frontmatter
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.

bash
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.

bash
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.

bash
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.

bash
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.

bash
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.

bash
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.

bash
curl -H "Accept: text/markdown" https://fullstackrecipes.com/api/recipes/using-tests