Files
Classeo/.agents/skills/bmad-testarch-atdd/steps-c/step-03-test-strategy.md
Mathias STRASSER aedde6707e
Some checks failed
CI / Backend Tests (push) Has been cancelled
CI / Frontend Tests (push) Has been cancelled
CI / E2E Tests (push) Has been cancelled
CI / Naming Conventions (push) Has been cancelled
CI / Build Check (push) Has been cancelled
feat: Calculer automatiquement les moyennes après chaque saisie de notes
Les enseignants ont besoin de moyennes à jour immédiatement après la
publication ou modification des notes, sans attendre un batch nocturne.

Le système recalcule via Domain Events synchrones : statistiques
d'évaluation (min/max/moyenne/médiane), moyennes matières pondérées
(normalisation /20), et moyenne générale par élève. Les résultats sont
stockés dans des tables dénormalisées avec cache Redis (TTL 5 min).

Trois endpoints API exposent les données avec contrôle d'accès par rôle.
Une commande console permet le backfill des données historiques au
déploiement.
2026-03-31 16:43:10 +02:00

2.8 KiB
Raw Blame History

name, description, outputFile, nextStepFile
name description outputFile nextStepFile
step-03-test-strategy Map acceptance criteria to test levels and priorities {test_artifacts}/atdd-checklist-{story_id}.md ./step-04-generate-tests.md

Step 3: Test Strategy

STEP GOAL

Translate acceptance criteria into a prioritized, level-appropriate test plan.

MANDATORY EXECUTION RULES

  • 📖 Read the entire step file before acting
  • Speak in {communication_language}
  • 🚫 Avoid duplicate coverage across levels

EXECUTION PROTOCOLS:

  • 🎯 Follow the MANDATORY SEQUENCE exactly
  • 💾 Record outputs before proceeding
  • 📖 Load the next step only when instructed

CONTEXT BOUNDARIES:

  • Available context: config, loaded artifacts, and knowledge fragments
  • Focus: this step's goal only
  • Limits: do not execute future steps
  • Dependencies: prior steps' outputs (if any)

MANDATORY SEQUENCE

CRITICAL: Follow this sequence exactly. Do not skip, reorder, or improvise.

1. Map Acceptance Criteria

  • Convert each acceptance criterion into test scenarios
  • Include negative and edge cases where risk is high

2. Select Test Levels

Choose the best level per scenario based on {detected_stack}:

If {detected_stack} is frontend or fullstack:

  • E2E for critical user journeys
  • API for business logic and service contracts
  • Component for UI behavior

If {detected_stack} is backend or fullstack:

  • Unit for pure functions, business logic, and edge cases
  • Integration for service interactions, database queries, and middleware
  • API/Contract for endpoint validation, request/response schemas, and Pact contracts
  • No E2E for pure backend projects (no browser-based testing needed)

3. Prioritize Tests

Assign P0P3 priorities using risk and business impact.


4. Confirm Red Phase Requirements

Ensure all tests are designed to fail before implementation (TDD red phase).


5. Save Progress

Save this step's accumulated work to {outputFile}.

  • If {outputFile} does not exist (first save), create it with YAML frontmatter:

    ---
    stepsCompleted: ['step-03-test-strategy']
    lastStep: 'step-03-test-strategy'
    lastSaved: '{date}'
    ---
    

    Then write this step's output below the frontmatter.

  • If {outputFile} already exists, update:

    • Add 'step-03-test-strategy' to stepsCompleted array (only if not already present)
    • Set lastStep: 'step-03-test-strategy'
    • Set lastSaved: '{date}'
    • Append this step's output to the appropriate section.

Load next step: {nextStepFile}

🚨 SYSTEM SUCCESS/FAILURE METRICS:

SUCCESS:

  • Step completed in full with required outputs

SYSTEM FAILURE:

  • Skipped sequence steps or missing outputs Master Rule: Skipping steps is FORBIDDEN.