mirror of
https://github.com/proffesor-for-testing/agentic-qe.git
synced 2026-09-19 08:45:47 +08:00
5a2883a4a0
Agentic Quality Engineering Fleet - AI-driven quality management platform Features: - 16 specialized QE agents for comprehensive testing - AI-powered test generation with 95% coverage targets - O(log n) sublinear algorithms for massive scale - Parallel test execution with intelligent orchestration - Real-time coverage analysis and gap detection - Smart quality gates with ML-driven decisions - Security scanning (SAST, DAST, dependency analysis) - Performance testing with load orchestration - Flaky test detection with automatic stabilization - API contract validation with breaking change detection - Test data generation (10,000+ records/sec) - Production intelligence (convert incidents to tests) - Chaos engineering for resilience testing - MCP integration with Claude Code - Multi-framework support (Jest, Mocha, Cypress, Playwright) Architecture: - TypeScript implementation - MCP (Model Context Protocol) integration - Claude Code agent orchestration - Event-driven agent coordination - Distributed fleet management - Cross-session memory persistence Documentation: - Complete API documentation (TypeDoc) - User guides (Getting Started, MCP Integration, Test Generation, etc.) - Architecture deep-dive - CLI reference - Contributing guidelines - MIT License Tech Stack: - TypeScript 5.3+ - Node.js 18+ - @anthropic-ai/sdk ^0.64.0 - @modelcontextprotocol/sdk ^1.18.2 - Jest for testing - Winston for logging - SQLite for persistence Project Structure: - src/ - Source code (agents, core, MCP, CLI) - tests/ - Comprehensive test suite - docs/ - Complete documentation - .claude/ - Agent definitions and commands - config/ - Configuration files 🤖 Generated with Claude Code https://claude.com/claude-code Co-Authored-By: Claude <noreply@anthropic.com>
108 lines
2.7 KiB
TypeScript
108 lines
2.7 KiB
TypeScript
/**
|
|
* Basic Usage Example - Agentic QE Fleet
|
|
*
|
|
* This example demonstrates how to initialize and use the AQE Fleet
|
|
* for automated testing and quality assurance tasks.
|
|
*/
|
|
|
|
import { FleetManager } from '../src/core/FleetManager';
|
|
import { Task, TaskPriority } from '../src/core/Task';
|
|
import { Config } from '../src/utils/Config';
|
|
import { Logger } from '../src/utils/Logger';
|
|
|
|
async function basicUsageExample() {
|
|
const logger = Logger.getInstance();
|
|
|
|
try {
|
|
logger.info('🚀 Starting Basic AQE Fleet Example');
|
|
|
|
// 1. Load configuration
|
|
const config = await Config.load();
|
|
|
|
// 2. Create and initialize fleet manager
|
|
const fleetManager = new FleetManager(config);
|
|
await fleetManager.initialize();
|
|
|
|
logger.info('✅ Fleet initialized successfully');
|
|
|
|
// 3. Start the fleet
|
|
await fleetManager.start();
|
|
|
|
logger.info('✅ Fleet started successfully');
|
|
|
|
// 4. Submit some test tasks
|
|
const tasks = [
|
|
new Task(
|
|
'unit-test',
|
|
'Run Unit Tests',
|
|
{
|
|
testPath: './tests/unit',
|
|
framework: 'jest',
|
|
pattern: '**/*.test.js'
|
|
},
|
|
{},
|
|
TaskPriority.HIGH
|
|
),
|
|
|
|
new Task(
|
|
'code-analysis',
|
|
'Analyze Code Quality',
|
|
{
|
|
sourcePath: './src',
|
|
language: 'typescript'
|
|
},
|
|
{},
|
|
TaskPriority.MEDIUM
|
|
),
|
|
|
|
new Task(
|
|
'security-scan',
|
|
'Security Vulnerability Scan',
|
|
{
|
|
sourcePath: './src',
|
|
depth: 'comprehensive'
|
|
},
|
|
{},
|
|
TaskPriority.HIGH
|
|
)
|
|
];
|
|
|
|
// Submit tasks to the fleet
|
|
for (const task of tasks) {
|
|
await fleetManager.submitTask(task);
|
|
logger.info(`📋 Submitted task: ${task.getName()} (${task.getId()})`);
|
|
}
|
|
|
|
// 5. Monitor fleet status
|
|
const status = fleetManager.getStatus();
|
|
logger.info('📊 Fleet Status:', {
|
|
activeAgents: status.activeAgents,
|
|
totalAgents: status.totalAgents,
|
|
runningTasks: status.runningTasks,
|
|
completedTasks: status.completedTasks
|
|
});
|
|
|
|
// 6. Wait for tasks to complete (in a real scenario, you'd use events)
|
|
await new Promise(resolve => setTimeout(resolve, 10000));
|
|
|
|
// 7. Check final status
|
|
const finalStatus = fleetManager.getStatus();
|
|
logger.info('📊 Final Fleet Status:', {
|
|
completedTasks: finalStatus.completedTasks,
|
|
failedTasks: finalStatus.failedTasks
|
|
});
|
|
|
|
// 8. Stop the fleet
|
|
await fleetManager.stop();
|
|
logger.info('🛑 Fleet stopped successfully');
|
|
|
|
} catch (error) {
|
|
logger.error('❌ Example failed:', error);
|
|
process.exit(1);
|
|
}
|
|
}
|
|
|
|
// Run the example
|
|
if (require.main === module) {
|
|
basicUsageExample();
|
|
} |