Skip to content

complete set of load tests added and validation - #11

Merged
seanankenbruck merged 3 commits into
mainfrom
tests/load-tests
Feb 21, 2026
Merged

seanankenbruck merged 3 commits into
mainfrom
tests/load-tests

Conversation

@seanankenbruck

@seanankenbruck seanankenbruck commented Feb 21, 2026

Copy link
Copy Markdown
Owner

This pull request introduces a comprehensive load testing framework for the Faro metrics ingestion system, focusing on high-throughput validation, monitoring, and developer usability. The changes include a new k6-based load test script, supporting documentation, utility scripts for monitoring and test sessions, and updates to .gitignore for test artifacts. Additionally, a minor change is made to the collector service to register storage dependencies.

Key changes:

Load Testing Framework and Scripts:

  • Added a robust k6 load test script (load-test.js) that simulates various load profiles (smoke, light, medium, heavy, stress), generates realistic metric batches, and validates ingestion throughput and system resilience. The script is highly configurable and includes custom metrics and thresholds.
  • Introduced helper scripts:
    • example-test-session.sh: Provides an interactive, end-to-end load testing workflow with validation and guidance for new users.
    • monitor-system.sh: Monitors Docker container and system resource usage, ClickHouse ingestion rates, and Kafka consumer lag in real-time during tests.

Documentation and Developer Experience:

  • Added a detailed QUICK_START.md guide for load testing, including step-by-step instructions, command cheatsheets, monitoring, troubleshooting, and expected results for each load profile.

Test Artifacts Management:

  • Updated .gitignore in the load test directory to exclude test result files, logs, temporary files, and k6 cloud outputs, keeping the repository clean.

Service Registration:

  • Registered the metrics storage service in the collector’s dependency injection container to support the ingestion tested by the new load framework. [1] [2]

@codecov

codecov Bot commented Feb 21, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 0% with 1 line in your changes missing coverage. Please review.

Files with missing lines Patch % Lines
src/Faro.Collector/Program.cs 0.00% 1 Missing ⚠️

📢 Thoughts on this report? Let us know!

@seanankenbruck
seanankenbruck merged commit 8fbd40c into main Feb 21, 2026
1 of 2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant