Skip to main content
Glama

Optimizely DXP MCP Server

by JaxonDigital
REGRESSION_SUITE_OVERVIEW.md3.79 kB
# DXP MCP Regression Suite Overview ## 🎉 What We Built A comprehensive regression testing framework to ensure the DXP MCP remains stable as we add new features. ## 📁 Structure ``` tests/regression/ ├── README.md # Test strategy & categories ├── mock-powershell.js # Mock PowerShell system for fast tests ├── test-framework.js # Base test framework with utilities ├── run-regression.js # Main test orchestrator ├── test-priority-1-tools.js # Critical path tests (deploy, status, export) ├── test-priority-2-tools.js # Core operations tests └── reports/ # Test execution reports ``` ## 🚀 Key Features ### 1. Mock PowerShell System - Simulates PowerShell responses without real API calls - Tracks command history for assertions - Configurable error simulation - Pattern-based response matching ### 2. Test Framework - Unified test structure across all suites - Built-in assertions and helpers - PowerShell mocking integration - Module cache management - Multi-project support ### 3. Progressive Testing - **Quick** (5 min): Critical tools only - **Full** (15 min): All priority tests - **Integration** (30 min): Real PowerShell ### 4. CI/CD Integration - GitHub Actions workflow - Platform matrix (Windows, macOS, Linux) - Node version matrix (18.x, 20.x, 22.x) - Automatic test reports ## 📋 Test Coverage ### Priority 1 - Critical Path ✅ - `deploy` - Deployment initiation - `status` - Environment status - `export_database` - Database backups - `check_export_status` - Export monitoring - `test_connection` - Connection validation - PowerShell command generation - Multi-project configuration ### Priority 2 - Core Operations ✅ - `start_deployment` - Full deployment control - `get_deployment_status` - Status tracking - `complete_deployment` - Deployment completion - `reset_deployment` - Rollback operations - `download_blobs` - Media/asset downloads - Permission checking - Error recovery & retry logic ### Priority 3 - Extended (To Be Added) - NLP command parsing - Azure DevOps integration - Log analysis - Telemetry - Rate limiting ## 🏃 Usage ### Run Locally ```bash # Quick regression (5 min) npm run test:regression:quick # Full regression (15 min) npm run test:regression:full # Platform-specific npm run test:regression:macos npm run test:regression:windows npm run test:regression:linux # With verbose output node tests/regression/run-regression.js -v # Run specific pattern node tests/regression/run-regression.js --pattern deploy ``` ### CI/CD Triggers - **PR**: Quick regression automatically - **Push to main**: Full regression - **Nightly**: Full + Integration - **Manual**: Choose test mode ## 📊 Reports Test reports are generated in JSON format: - Local: `tests/regression/reports/` - CI: GitHub Actions artifacts ## 🛡️ Protection Mechanisms 1. **Mock First** - Tests use mocks by default, no accidental API calls 2. **Credential Isolation** - Test credentials separate from production 3. **Platform Coverage** - Tests run on all supported platforms 4. **Automatic Regression** - PRs blocked if tests fail 5. **Historical Reports** - 30-day retention for tracking trends ## 🎯 Benefits 1. **Confidence** - Know immediately if changes break existing functionality 2. **Speed** - Quick tests provide fast feedback 3. **Coverage** - Test across platforms and Node versions 4. **Documentation** - Tests serve as living documentation 5. **Quality** - Enforce quality standards automatically ## 🔮 Next Steps 1. Add Priority 3 tests for extended features 2. Integrate with code coverage tools 3. Add performance regression tests 4. Create visual test dashboard 5. Add E2E tests with real test project

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/JaxonDigital/optimizely-dxp-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server