🧪 Tests

testing-test-strategy-planner

Planification de stratégie de test incluant la pyramide de tests, les quadrants de tests, la couverture et l'analyse de risques.

⚡ Installation & lancement en 1 commande

Copiez-collez dans votre terminal : le skill s'installe dans ~/.claude/skills et Claude Code se lance directement dessus.

macOS / Linux
curl -fsSL https://raw.githubusercontent.com/khalilbenaz/claude-skills-collection/main/install.sh | sh -s -- testing-test-strategy-planner --launch
Windows (PowerShell)
iex "& { $(iwr -useb https://raw.githubusercontent.com/khalilbenaz/claude-skills-collection/main/install.ps1) } testing-test-strategy-planner -Launch"

🚀 Déjà installé ?

claude "/testing-test-strategy-planner"

Ou tapez /testing-test-strategy-planner dans une session Claude Code, ou décrivez simplement votre besoin — le skill se déclenche automatiquement via le skill-router.

🔑 Déclencheurs automatiques

Le skill s'active automatiquement quand votre demande contient :

stratégie de testpyramide de teststest plancouverture de tests

📦 Installation manuelle

git clone https://github.com/khalilbenaz/claude-skills-collection.git cp -r claude-skills-collection/skills/testing-test-strategy-planner ~/.claude/skills/

Payload du plugin : skills/testing-test-strategy-planner · source éditable : testing-skills/test-strategy-planner

📖 Manuel

Test Strategy Planner

Workflow

1. Analyser le contexte du projet

Recueillir avant toute chose :

Décision rapide :

ContextePriorité
Startup MVPTests unitaires critiques + 2-3 E2E smoke
Fintech / banqueCouverture unitaire ≥ 80%, contrats API, tests de sécurité obligatoires
MicroservicesTests de contrat (Pact), tests d'intégration par service
Legacy sans testsCharacterization tests avant tout refactoring

2. Définir la pyramide de tests

Proportion cible selon le contexte :

              [E2E / UI]        ~10 %   lents, coûteux, fragiles
           [Intégration]        ~20 %   API, BDD, contrats
        [Unitaires]             ~70 %   rapides, isolés, stables

Pour un projet microservices, substituer une partie des E2E par des tests de contrat (Pact) :

              [E2E smoke]       ~5 %
        [Contrats Pact]         ~15 %
    [Intégration service]       ~20 %
  [Unitaires]                   ~60 %

3. Appliquer les quadrants de tests agiles (Agile Testing Quadrants)

QuadrantTypeObjectifExemples
Q1 — Soutenir l'équipe, techUnitaires, composantsGuider le design (TDD)JUnit, Jest, xUnit
Q2 — Soutenir l'équipe, métierFonctionnels, acceptanceValider les storiesCucumber, FitNesse, Playwright
Q3 — Critiquer le produit, métierExploratoires, usabilitéTrouver ce que les scripts ratentSessions exploratoires, UX testing
Q4 — Critiquer le produit, techPerformance, sécuritéNon-régressions non-fonctionnellesk6, OWASP ZAP, Gatling

Vérifier qu'au moins un quadrant par sprint est couvert ; Q3 et Q4 sont souvent négligés.


4. Analyse de risques (Risk-Based Testing)

Matrice risque = probabilité × impact :

         │ Impact faible │ Impact élevé
─────────┼───────────────┼──────────────────
Proba    │               │
élevée   │  Surveiller   │  ★ Tester en priorité
─────────┼───────────────┼──────────────────
Proba    │               │
faible   │  Ignorer      │  Tester si temps dispo

Exemples de zones à haut risque à identifier : paiements, authentification, calculs métier critiques, intégrations tierces instables.

Template Markdown pour la matrice :

| Fonctionnalité | Probabilité (1-5) | Impact (1-5) | Score | Couverture cible |
|---|---|---|---|---|
| Paiement carte | 3 | 5 | 15 | Unitaire + Intégration + E2E |
| Rapport PDF | 2 | 2 | 4 | Unitaire seul |

5. Planifier la couverture de tests

Objectifs de couverture recommandés :

DomaineCouverture ligneCouverture branche
Logique métier critique≥ 90 %≥ 80 %
Services applicatifs≥ 75 %≥ 70 %
Infrastructure / adapters≥ 50 %
Code généré automatiquementExclure

Configurer Istanbul/NYC (JS/TS) :

// package.json
"jest": {
  "coverageThreshold": {
    "global": { "lines": 80, "branches": 70, "functions": 80 }
  },
  "coveragePathIgnorePatterns": ["generated/", "migrations/"]
}

JaCoCo (Java/Kotlin) — build.gradle :

jacocoTestCoverageVerification {
  violationRules {
    rule { limit { minimum = 0.80 } }
  }
}

Coverlet (.NET) :

dotnet test --collect:"XPlat Code Coverage" \
  /p:Threshold=80 /p:ThresholdType=line

Bloquer le pipeline CI si les seuils ne sont pas atteints.


6. Définir les environnements et données de test

Environnements :

EnvUsageRefresh données
Local / DevTests unitaires, intégrationMocks / fixtures
CISmoke, intégration légèreSeed DB automatique
StagingE2E, performance, UATClone anonymisé prod
Pré-prodTests de charge, go/no-goJeu complet anonymisé

Stratégie données :


7. Établir les critères d'entrée et de sortie

Critères d'entrée (pour démarrer les tests d'intégration/E2E) :

Critères de sortie (Definition of Done QA) :

Niveaux de sévérité de défauts :

NiveauDéfinitionSeuil acceptable
BloquantCrash, perte de données0
CritiqueFonctionnalité clé KO0 en release
MajeurDégradation significative≤ 2 en release
MineurCosmétique, workaround dispoÀ planifier

8. Intégrer la stratégie dans le CI/CD

Pipeline type (GitHub Actions / Azure DevOps) :

stages:
  - name: unit-tests        # < 2 min — bloque le merge
  - name: lint-and-coverage # contrôle seuils
  - name: integration-tests # < 10 min — bloque le merge
  - name: e2e-smoke         # < 5 min — bloque le déploiement
  - name: performance       # planifié nightly
  - name: security-scan     # OWASP ZAP, Snyk — planifié nightly

Garde-fous et anti-patterns

Bonnes pratiques 2026