Skip to content

Commit c08f891

Browse files
committed
test(load): implementar load testing suite - TASK-037
Implementacion completa de load testing: Locust Load Testing (locustfile.py): - 3 user classes: * DORAMetricsAPIUser (wait 1-3s, realistic mix) * HighVolumeUser (wait 0.5s, stress testing) * WriteOperationUser (wait 5-10s, POST operations) - 11 task types con weights realistas: * get_dora_summary (10) * get_dashboard (5) * get_deployment_frequency_chart (3) * get_lead_time_chart (3) * get_data_catalog (2) * query_dora_metrics_catalog (2) * get_trend_analysis (2) * check_ecosystem_health (1) * get_data_quality (1) * get_comparative_analytics (1) * get_anomaly_detection (1) - Features: Real-time stats, percentiles, failures tracking, RPS, HTML reports Simple Load Test Script (simple_load_test.sh): - Bash script con curl y GNU parallel - Concurrent requests configurables - Response time tracking (ms) - Statistical analysis (mean, median, p50, p95, p99) - Performance assessment (pass/fail) - CSV results output Test Scenarios: 1. Normal Load: 10 users, 5min 2. Peak Load: 50 users, 10min 3. Stress Test: 100 users, 15min 4. Endurance Test: 20 users, 1hour Performance Targets: - Average: < 300ms (threshold: 500ms) - p50: < 200ms (threshold: 400ms) - p95: < 800ms (threshold: 1000ms) - p99: < 1500ms (threshold: 2000ms) - Success rate: >= 99% Endpoints Tested (15): - Core API (4): metrics, dashboard, charts - Data Catalog (2): catalog, query - Ecosystem Health (2): health, quality - Advanced Analytics (7): trends, comparisons, anomalies Monitoring: - System metrics (CPU, memory, DB connections) - Application logs - Slow queries - Resource utilization Archivos: - scripts/load_testing/locustfile.py - scripts/load_testing/simple_load_test.sh - docs/qa/TASK-037-load-testing.md Story Points: 5 SP Estado: COMPLETADO
1 parent 4fcd2b4 commit c08f891

3 files changed

Lines changed: 906 additions & 0 deletions

File tree

0 commit comments

Comments
 (0)