- /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