Skip to content

Test Reports

Version: 1.0.0 | Last Updated: 2025-01-06 | Status: Active

Overview

This section contains automated test execution reports generated by the CI/CD pipeline. Reports include unit tests, integration tests, E2E tests, and mutation testing results.

Latest Report

View Latest Test Report - Most recent test execution results.

Report Archive

2025 Reports

Report Structure

Each test report includes:

Summary Metrics

  • Total Tests: Number of tests executed
  • Passed: Tests that passed
  • Failed: Tests that failed
  • Skipped: Tests that were skipped
  • Coverage: Code coverage percentage
  • Duration: Test execution time

Coverage Report

Backend Coverage:
- Overall: 85% minimum
- Core (app/core/): 95% minimum
- Domains: 85% minimum
- Modules: 80% minimum

Mutation Testing

Mutation Score:
- Security-Critical: 90% minimum
- Core Components: 80% minimum
- Business Logic: 70% minimum

Failure Analysis

  • Test Failures: Failed tests with stack traces
  • Flaky Tests: Tests with intermittent failures
  • Slow Tests: Tests exceeding time thresholds

Test Categories

Unit Tests

  • Location: backend/tests/unit/
  • Execution: pytest tests/unit/ -v
  • Requirements: No external dependencies
  • Coverage Target: 85%+

Integration Tests

  • Location: backend/tests/integration/
  • Execution: pytest tests/integration/ -v
  • Requirements: Docker services (postgres, redis, rabbitmq)
  • Coverage Target: 70%+

E2E Tests

  • Location: backend/tests/e2e/
  • Execution: pytest tests/e2e/ -v
  • Requirements: Full stack running
  • Coverage Target: Critical user journeys

Mutation Tests

  • Location: backend/tests/mutation/
  • Execution: mutmut run
  • Requirements: Unit test suite
  • Target: Kill 80%+ of mutations

CI/CD Integration

Pipeline Triggers

  • Push to main branch
  • Pull request creation/update
  • Manual trigger from GitHub Actions

Pipeline Stages

  1. Lint - Code quality checks (Ruff, MyPy)
  2. Unit Tests - Fast feedback loop
  3. Integration Tests - Component interactions
  4. E2E Tests - Full system validation
  5. Mutation Tests - Security-critical code
  6. Report Generation - Publish test reports

Coverage Requirements

Minimum Coverage Thresholds

# backend/pyproject.toml
[tool.coverage.report]
fail_under = 85  # Overall minimum

[tool.coverage.paths]
core = app/core/*
core_target = 95  # Core requires 95%+

Mutation Testing Targets

# Security-critical files
security_critical:
  - app/core/jwt.py
  - app/core/security.py
  - app/core/auth.py
mutation_target: 90%+

Coverage History

Month Overall Core Domains Modules
2025-01 87% 96% 86% 82%
2024-12 85% 94% 84% 80%

Mutation Score History

Month Critical Core Business
2025-01 92% 85% 75%
2024-12 88% 82% 72%

Generating Reports

Local Execution

# Run full test suite
make test-backend

# Generate coverage report
make test-backend -- --cov=app --cov-report=html

# Run mutation tests
make mutation-backend

CI Execution

Reports are automatically generated and published to this documentation site on every commit to the main branch.

Report Metadata

Report metadata is maintained in .meta/index.json:

{
  "latest_report": "2025/01-06.md",
  "total_reports": 150,
  "coverage_trend": "upward",
  "mutation_score_trend": "stable"
}