configure-integration-tests

安装量: 48
排名: #15372

安装

npx skills add https://github.com/laurigates/claude-plugins --skill configure-integration-tests
/configure:integration-tests
Check and configure integration testing infrastructure for testing service interactions, databases, and external dependencies.
When to Use This Skill
Use this skill when...
Use another approach when...
Setting up integration testing infrastructure with Supertest, pytest, or Testcontainers
Writing individual integration test cases for specific endpoints
Creating docker-compose.test.yml for local test service containers
Running existing integration tests (
bun test
,
pytest -m integration
)
Auditing integration test setup for completeness (fixtures, factories, CI)
Configuring unit test runners (
/configure:tests
instead)
Adding integration test jobs to GitHub Actions with service containers
Debugging a specific failing integration test
Separating integration tests from unit tests in project structure
Setting up API contract testing (
/configure:api-tests
instead)
Context
Project root: !
pwd
Package files: !
find . -maxdepth 1 ( -name 'package.json' -o -name 'pyproject.toml' -o -name 'Cargo.toml' -o -name 'go.mod' )
Integration tests dir: !
find tests -maxdepth 1 -type d -name 'integration'
Docker compose test: !
find . -maxdepth 1 -name 'docker-compose.test.yml'
Vitest integration config: !
find . -maxdepth 1 -name 'vitest.integration.config.*'
Supertest dep: !
grep -l 'supertest' package.json
Testcontainers dep: !
grep -l 'testcontainers' package.json pyproject.toml
Project standards: !
find . -maxdepth 1 -name '.project-standards.yaml'
Parameters
Parse from command arguments:
--check-only
Report compliance status without modifications (CI/CD mode)
--fix
Apply fixes automatically without prompting
--framework
Override framework detection
Integration Testing Stacks:
JavaScript/TypeScript
Supertest + Testcontainers
Python
pytest + testcontainers-python + httpx
Rust
cargo test with

[ignore]

  • testcontainers-rs
    Go
    testing + testcontainers-go Key Difference from Unit Tests: Integration tests interact with real databases, APIs, and services They test component boundaries and data flow They typically require test fixtures and cleanup Execution Execute this integration testing compliance check: Step 1: Detect existing integration testing infrastructure Check for these indicators: Indicator Component Status tests/integration/ directory Integration tests Present testcontainers in dependencies Container testing Configured supertest in package.json HTTP testing Configured docker-compose.test.yml Test services Present pytest.ini with integration marker pytest integration Configured Step 2: Analyze current state Check for complete integration testing setup: Test Organization: tests/integration/ directory exists Integration tests separated from unit tests Test fixtures and factories present Database seeding/migration scripts JavaScript/TypeScript (Supertest): supertest installed @testcontainers/postgresql or similar installed Test database configuration API endpoint tests present Authentication test helpers Python (pytest + testcontainers): testcontainers installed httpx or requests for HTTP testing pytest-asyncio for async tests integration marker defined Database fixtures in conftest.py Container Infrastructure: docker-compose.test.yml exists Test database container defined Redis/cache container (if needed) Network isolation configured Step 3: Generate compliance report Print a formatted compliance report: Integration Testing Compliance Report ====================================== Project: [name] Language: [TypeScript | Python | Rust | Go] Test Organization: Integration directory tests/integration/ [EXISTS | MISSING] Separated from unit not in src/ [CORRECT | MIXED] Test fixtures tests/fixtures/ [EXISTS | MISSING] Database seeds tests/seeds/ [EXISTS | N/A] Framework Setup: HTTP testing supertest/httpx [INSTALLED | MISSING] Container testing testcontainers [INSTALLED | MISSING] Async support pytest-asyncio [INSTALLED | N/A] Infrastructure: docker-compose.test.yml test services [EXISTS | MISSING] Test database PostgreSQL/SQLite [CONFIGURED | MISSING] Service isolation network config [CONFIGURED | MISSING] CI/CD Integration: Integration test job GitHub Actions [CONFIGURED | MISSING] Service containers workflow services [CONFIGURED | MISSING] Overall: [X issues found] Recommendations:
  • Install testcontainers for database testing
  • Create docker-compose.test.yml for local testing
  • Add integration test job to CI workflow If --check-only , stop here. Step 4: Configure integration testing (if --fix or user confirms) Apply configuration based on detected project type. Use templates from REFERENCE.md : Install dependencies (supertest, testcontainers, etc.) Create test directory ( tests/integration/ ) with setup files Create sample tests for API endpoints and database operations Create Vitest integration config (JS/TS) or pytest markers (Python) Add scripts to package.json or create run commands Step 5: Create container infrastructure Create docker-compose.test.yml with: PostgreSQL test database (tmpfs for speed) Redis test instance (if needed) Network isolation Add corresponding npm/bun scripts for managing test containers. Use templates from REFERENCE.md . Step 6: Configure CI/CD integration Add integration test job to .github/workflows/test.yml with: Service containers (postgres, redis) Database migration step Integration test execution Artifact upload for test results Use the CI workflow template from REFERENCE.md . Step 7: Create test fixtures and factories Create tests/fixtures/factories.ts (or Python equivalent) with: Data factory functions using faker Database seeding helpers Cleanup utilities Use factory templates from REFERENCE.md . Step 8: Update standards tracking Update .project-standards.yaml : standards_version : "2025.1" last_configured : "[timestamp]" components : integration_tests : "2025.1" integration_tests_framework : "[supertest|pytest|testcontainers]" integration_tests_containers : true integration_tests_ci : true Step 9: Print final report Print a summary of changes applied, scripts added, and next steps for running integration tests. For detailed templates and code examples, see REFERENCE.md . Agentic Optimizations Context Command Quick compliance check /configure:integration-tests --check-only Auto-fix all issues /configure:integration-tests --fix Run integration tests (JS) bun test tests/integration --dots --bail=1 Run integration tests (Python) pytest -m integration -x -q Start test containers docker compose -f docker-compose.test.yml up -d Check container health `docker compose -f docker-compose.test.yml ps --format json Flags Flag Description --check-only Report status without offering fixes --fix Apply all fixes automatically without prompting --framework Override framework detection (supertest, pytest, testcontainers) Examples

Check compliance and offer fixes

/configure:integration-tests

Check only, no modifications

/configure:integration-tests --check-only

Auto-fix all issues

/configure:integration-tests --fix

Force specific framework

/configure:integration-tests
--fix
--framework
pytest
Error Handling
No app entry point found
Ask user to specify app location
Docker not available
Warn about testcontainers requirement
Database type unknown
Ask user to specify database type
Port conflicts
Suggest alternative ports in docker-compose See Also /configure:tests - Unit testing configuration /configure:api-tests - API contract testing /configure:coverage - Coverage configuration /configure:all - Run all compliance checks Testcontainers documentation : https://testcontainers.com Supertest documentation : https://github.com/ladjs/supertest
返回排行榜