
Test Environment Management
- 93 installs
- 433 repo stars
- Updated August 4, 2026
- proffesor-for-testing/agentic-qe
test-environment-management is a Claude Code skill for testing & qa.
About
test-environment-management is a Claude Code skill for testing & qa. It helps solo builders move faster with AI-assisted development.
- test-environment-management
- Testing & QA
- AI-coding skill
Test Environment Management by the numbers
- 93 all-time installs (skills.sh)
- +3 installs in the week ending Aug 4, 2026 (Skillselion tracking)
- Ranked #1,022 of 2,153 Testing & QA skills by installs in the Skillselion catalog
- Data as of Aug 5, 2026 (Skillselion catalog sync)
npx skills add https://github.com/proffesor-for-testing/agentic-qe --skill test-environment-managementAdd your badge
Show developers this skill is listed on Skillselion. Paste this into your README.
| Installs | 93 |
|---|---|
| repo stars | ★ 433 |
| Last updated | August 4, 2026 |
| Repository | proffesor-for-testing/agentic-qe ↗ |
How do I helps with testing & qa tasks.?
Helps with testing & qa tasks.
Who is it for?
Best when you're working on testing & qa and need structured help with test environment management.
Skip if: Teams with no testing & qa needs, or anyone wanting a generic chat assistant without this specific workflow.
When should I use this skill?
When you need to helps with testing & qa tasks., or when test-environment-management is a claude code skill for testing & qa.
What you get
Structured output aligned to test-environment-management: test-environment-management, Testing & QA.
Files
Test Environment Management
<default_to_action> When managing test environments: 1. DEFINE environment types (local, CI, staging, prod) 2. CONTAINERIZE with Docker for consistency 3. ENSURE parity with production (same versions, configs) 4. MOCK external services (service virtualization) 5. OPTIMIZE costs (auto-shutdown, spot instances)
Quick Environment Checklist:
- Same OS/versions as production
- Same database type and version
- Same configuration structure
- Containers for reproducibility
- Auto-shutdown after hours
Critical Success Factors:
- "Works on my machine" = environment inconsistency
- Infrastructure as Code = repeatable environments
- Service virtualization = test without external dependencies
</default_to_action>
Quick Reference Card
When to Use
- Setting up test infrastructure
- Debugging environment-specific failures
- Reducing test infrastructure costs
- Ensuring dev/prod parity
---
Docker for Test Environments
# docker-compose.test.yml
version: '3.8'
services:
app:
build: .
ports:
- "3000:3000"
environment:
NODE_ENV: test
DATABASE_URL: postgres://postgres:password@db:5432/test
depends_on:
- db
- redis
db:
image: postgres:15
environment:
POSTGRES_DB: test
POSTGRES_PASSWORD: password
redis:
image: redis:7Run tests in container:
docker-compose -f docker-compose.test.yml up -d
docker-compose -f docker-compose.test.yml exec app npm test
docker-compose -f docker-compose.test.yml down---
Service Virtualization
// Mock external services with WireMock
import { WireMock } from 'wiremock-captain';
const wiremock = new WireMock('http://localhost:8080');
// Mock payment gateway
await wiremock.register({
request: {
method: 'POST',
url: '/charge'
},
response: {
status: 200,
jsonBody: { transactionId: '12345', status: 'approved' }
}
});
// Tests use mock instead of real gateway---
Cost Optimization
# Auto-shutdown test environments after hours
0 20 * * * aws ec2 stop-instances --instance-ids $(aws ec2 describe-instances \
--filters "Name=tag:Environment,Values=test" \
--query "Reservations[].Instances[].InstanceId" --output text)
# Start before work hours
0 7 * * 1-5 aws ec2 start-instances --instance-ids $(aws ec2 describe-instances \
--filters "Name=tag:Environment,Values=test" \
--query "Reservations[].Instances[].InstanceId" --output text)Use spot instances (70% savings):
resource "aws_instance" "test_runner" {
instance_type = "c5.2xlarge"
instance_market_options {
market_type = "spot"
spot_options {
max_price = "0.10"
}
}
}---
Agent-Driven Environment Management
// Provision test environment
await Task("Environment Provisioning", {
type: 'integration-testing',
services: ['app', 'db', 'redis', 'mocks'],
parity: 'production',
lifetime: '2h'
}, "qe-test-executor");
// Chaos testing in isolated environment
await Task("Chaos Test Environment", {
baseline: 'staging',
isolate: true,
injectFaults: ['network-delay', 'pod-failure']
}, "qe-chaos-engineer");---
Agent Coordination Hints
Memory Namespace
aqe/environment-management/
├── configs/* - Environment configurations
├── parity-checks/* - Dev/prod parity results
├── cost-reports/* - Infrastructure costs
└── service-mocks/* - Service virtualization configsFleet Coordination
const envFleet = await FleetManager.coordinate({
strategy: 'environment-management',
agents: [
'qe-test-executor', // Provision environments
'qe-performance-tester', // Environment performance
'qe-chaos-engineer' // Resilience testing
],
topology: 'sequential'
});---
Related Skills
- test-data-management - Data for environments
- continuous-testing-shift-left - CI/CD environments
- chaos-engineering-resilience - Environment resilience
---
Remember
With Agents: Agents automatically provision test environments matching production, ensure parity, mock external services, and optimize costs with auto-scaling and auto-shutdown.
{
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "https://agentic-qe.dev/schemas/test-environment-management-output.json",
"title": "AQE Test Environment Management Skill Output Schema",
"description": "Schema for test environment provisioning, IaC validation, and environment parity assessment.",
"type": "object",
"required": ["skillName", "version", "timestamp", "status", "trustTier", "output"],
"properties": {
"skillName": {
"type": "string",
"const": "test-environment-management",
"description": "Skill identifier"
},
"version": {
"type": "string",
"pattern": "^\\d+\\.\\d+\\.\\d+(-[a-zA-Z0-9]+)?$"
},
"timestamp": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(\\.\\d+)?(Z|[+-]\\d{2}:\\d{2})?$"
},
"status": {
"type": "string",
"enum": ["success", "partial", "failed", "skipped"]
},
"trustTier": {
"type": "integer",
"const": 3
},
"output": {
"type": "object",
"required": ["summary", "environments", "parityCheck", "metrics"],
"properties": {
"summary": {
"type": "string",
"minLength": 10,
"maxLength": 2000
},
"score": {
"$ref": "#/$defs/environmentScore"
},
"environments": {
"type": "array",
"items": {
"$ref": "#/$defs/environmentResult"
},
"minItems": 1,
"description": "Environment status"
},
"parityCheck": {
"$ref": "#/$defs/parityCheck",
"description": "Dev/prod parity assessment"
},
"serviceVirtualization": {
"$ref": "#/$defs/serviceVirtualization",
"description": "Mock/stub service status"
},
"costAnalysis": {
"$ref": "#/$defs/costAnalysis",
"description": "Environment cost metrics"
},
"infrastructure": {
"$ref": "#/$defs/infrastructureStatus",
"description": "IaC and provisioning status"
},
"findings": {
"type": "array",
"items": {
"$ref": "#/$defs/environmentFinding"
},
"maxItems": 500
},
"recommendations": {
"type": "array",
"items": {
"$ref": "#/$defs/recommendation"
},
"maxItems": 100
},
"metrics": {
"$ref": "#/$defs/environmentMetrics"
},
"artifacts": {
"type": "array",
"items": {
"$ref": "#/$defs/artifact"
},
"maxItems": 50
}
}
},
"metadata": {
"type": "object",
"properties": {
"executionTimeMs": { "type": "integer", "minimum": 0 },
"toolsUsed": {
"type": "array",
"items": {
"type": "string",
"enum": ["docker", "kubernetes", "terraform", "ansible", "wiremock", "localstack", "testcontainers"]
}
},
"agentId": { "type": "string", "pattern": "^qe-[a-z][a-z0-9-]*$" },
"cloudProvider": { "type": "string", "enum": ["aws", "gcp", "azure", "local", "hybrid"] }
}
},
"validation": {
"type": "object",
"properties": {
"schemaValid": { "type": "boolean" },
"contentValid": { "type": "boolean" },
"confidence": { "type": "number", "minimum": 0, "maximum": 1 }
}
},
"learning": {
"type": "object",
"properties": {
"patternsDetected": { "type": "array", "items": { "type": "string" } },
"reward": { "type": "number", "minimum": 0, "maximum": 1 }
}
}
},
"$defs": {
"environmentScore": {
"type": "object",
"required": ["value", "max"],
"properties": {
"value": { "type": "number", "minimum": 0, "maximum": 100 },
"max": { "type": "number", "const": 100 },
"grade": { "type": "string", "pattern": "^[A-F][+-]?$" },
"parityScore": { "type": "number", "minimum": 0, "maximum": 100 }
}
},
"environmentResult": {
"type": "object",
"required": ["name", "type", "status"],
"properties": {
"name": { "type": "string" },
"type": {
"type": "string",
"enum": ["local", "ci", "staging", "production", "ephemeral"]
},
"status": {
"type": "string",
"enum": ["healthy", "degraded", "unavailable", "provisioning"]
},
"services": {
"type": "array",
"items": {
"$ref": "#/$defs/serviceStatus"
}
},
"uptime": { "type": "number", "minimum": 0, "maximum": 100 },
"lastHealthCheck": { "type": "string" },
"lifetime": {
"type": "string",
"enum": ["permanent", "ephemeral", "scheduled"]
}
}
},
"serviceStatus": {
"type": "object",
"required": ["name", "status"],
"properties": {
"name": { "type": "string" },
"status": { "type": "string", "enum": ["running", "stopped", "error", "mocked"] },
"version": { "type": "string" },
"port": { "type": "integer" },
"healthEndpoint": { "type": "string" }
}
},
"parityCheck": {
"type": "object",
"properties": {
"overallParity": { "type": "number", "minimum": 0, "maximum": 100 },
"checks": {
"type": "array",
"items": {
"$ref": "#/$defs/parityItem"
}
},
"discrepancies": {
"type": "array",
"items": {
"$ref": "#/$defs/discrepancy"
}
}
}
},
"parityItem": {
"type": "object",
"required": ["item", "match"],
"properties": {
"item": {
"type": "string",
"enum": ["os", "database", "dependencies", "config", "env-vars", "network", "storage"]
},
"match": { "type": "boolean" },
"devValue": { "type": "string" },
"prodValue": { "type": "string" }
}
},
"discrepancy": {
"type": "object",
"required": ["item", "severity"],
"properties": {
"item": { "type": "string" },
"description": { "type": "string" },
"severity": { "type": "string", "enum": ["critical", "high", "medium", "low"] },
"devValue": { "type": "string" },
"prodValue": { "type": "string" },
"recommendation": { "type": "string" }
}
},
"serviceVirtualization": {
"type": "object",
"properties": {
"enabled": { "type": "boolean" },
"mockedServices": {
"type": "array",
"items": {
"$ref": "#/$defs/mockedService"
}
},
"stubCount": { "type": "integer", "minimum": 0 },
"mockServer": { "type": "string", "enum": ["wiremock", "mockserver", "mountebank", "localstack"] }
}
},
"mockedService": {
"type": "object",
"required": ["name", "type"],
"properties": {
"name": { "type": "string" },
"type": { "type": "string", "enum": ["api", "database", "queue", "storage", "auth"] },
"stubFile": { "type": "string" },
"requestCount": { "type": "integer", "minimum": 0 }
}
},
"costAnalysis": {
"type": "object",
"properties": {
"dailyCost": { "type": "number", "minimum": 0 },
"monthlyCost": { "type": "number", "minimum": 0 },
"costByEnvironment": {
"type": "object",
"additionalProperties": { "type": "number" }
},
"optimizationSavings": { "type": "number", "minimum": 0 },
"recommendations": { "type": "array", "items": { "type": "string" } }
}
},
"infrastructureStatus": {
"type": "object",
"properties": {
"iacTool": { "type": "string", "enum": ["terraform", "pulumi", "cloudformation", "ansible", "docker-compose"] },
"lastApplied": { "type": "string" },
"driftDetected": { "type": "boolean" },
"resourcesManaged": { "type": "integer", "minimum": 0 },
"containerized": { "type": "boolean" }
}
},
"environmentFinding": {
"type": "object",
"required": ["id", "title", "severity", "category"],
"properties": {
"id": { "type": "string", "pattern": "^ENV-\\d{3,6}$" },
"title": { "type": "string", "minLength": 5, "maxLength": 200 },
"description": { "type": "string", "maxLength": 2000 },
"severity": { "type": "string", "enum": ["critical", "high", "medium", "low", "info"] },
"category": {
"type": "string",
"enum": ["parity", "availability", "performance", "security", "cost", "configuration"]
},
"affectedEnvironments": { "type": "array", "items": { "type": "string" } },
"remediation": { "type": "string" }
}
},
"environmentMetrics": {
"type": "object",
"properties": {
"environmentsManaged": { "type": "integer", "minimum": 0 },
"servicesDeployed": { "type": "integer", "minimum": 0 },
"parityScore": { "type": "number", "minimum": 0, "maximum": 100 },
"availabilityPercent": { "type": "number", "minimum": 0, "maximum": 100 },
"provisioningTimeMs": { "type": "integer", "minimum": 0 },
"monthlyCost": { "type": "number", "minimum": 0 }
}
},
"recommendation": {
"type": "object",
"required": ["id", "title", "priority"],
"properties": {
"id": { "type": "string", "pattern": "^REC-\\d{3,6}$" },
"title": { "type": "string" },
"description": { "type": "string" },
"priority": { "type": "string", "enum": ["critical", "high", "medium", "low"] },
"costImpact": { "type": "string" }
}
},
"artifact": {
"type": "object",
"required": ["type", "path"],
"properties": {
"type": { "type": "string", "enum": ["config", "report", "diagram", "log", "iac"] },
"path": { "type": "string" },
"format": { "type": "string", "enum": ["json", "yaml", "tf", "yml", "html", "md"] }
}
}
}
}
Related skills
FAQ
What does test-environment-management do?
test-environment-management is a Claude Code skill for testing & qa.
When should I use test-environment-management?
When you need to helps with testing & qa tasks., or when test-environment-management is a claude code skill for testing & qa.
What are the main capabilities?
test-environment-management; Testing & QA; AI-coding skill.