Aller au contenu

PD-3 — Scénarios de tests contractuels

1. Références

  • Spécification : PD-3-specification.md
  • Epic : PD-193 INFRA
  • User Story : PD-3

2. Matrice de couverture

ID Invariant ID Critère ID Test Couverture Commentaire
INV-01 CA-01 TC-INV-01 Oui Vérifie l’absence de perte silencieuse
INV-02 CA-02 TC-INV-02 Oui Vérifie l’observabilité continue
INV-03 CA-04 TC-INV-03 Oui Vérifie persistance + reprise
INV-04 CA-03 TC-INV-04 Oui Vérifie signalement explicite
CA-05 TC-DOC-01 Oui Vérifie documentation opérable

3. Scénarios de test — Flux nominaux

TEST-ID: TC-NOM-01
Référence spec: INV-01, INV-02, CA-01, CA-02

GIVEN
  - Une tâche est enregistrée dans la file
  - Le service est opérationnel
WHEN
  - La tâche est prise en charge et exécutée
THEN
  - La tâche atteint un état final explicite (succès ou échec)
AND
  - L’état final est consultable via un mécanisme observable
TEST-ID: TC-NOM-02
Référence spec: INV-03, CA-04

GIVEN
  - Une tâche est en cours d’exécution
WHEN
  - Une interruption complète du service survient
AND
  - Le service redémarre
THEN
  - La tâche reste identifiable
AND
  - La tâche reprend ou bascule dans un état d’échec explicite sans intervention humaine

4. Scénarios de test — Cas d’erreur

TEST-ID: TC-ERR-01
Référence spec: ERR-02, CA-03

GIVEN
  - Une tâche valide enregistrée
WHEN
  - L’exécution de la tâche échoue
THEN
  - L’état d’échec est explicitement détectable
AND
  - Un signal d’incident est observable
TEST-ID: TC-ERR-02
Référence spec: ERR-01, INV-03

GIVEN
  - Plusieurs tâches en attente et en cours
WHEN
  - Une interruption brutale du service survient
THEN
  - Aucune tâche n’est perdue
AND
  - Toutes les tâches restent identifiables avec un état cohérent
TEST-ID: TC-ERR-03
Référence spec: ERR-03

GIVEN
  - Une tâche en cours d’exécution
WHEN
  - Un événement de force majeure simulé survient
THEN
  - Une information explicite d’exécution incomplète est observable

5. Tests d’invariants (non négociables)

Invariant Test(s) dédiés Observable Commentaire
INV-01 TC-INV-01 États persistés Aucune tâche fantôme
INV-02 TC-INV-02 Consultation d’état Observabilité continue
INV-03 TC-INV-03 Reprise post-interruption Pas de perte d’historique
INV-04 TC-INV-04 Signal incident Détection systématique
TEST-ID: TC-INV-01
Référence spec: INV-01

GIVEN
  - Un ensemble de tâches enregistrées
WHEN
  - Le cycle complet d’exécution est terminé
THEN
  - Chaque tâche est associée à un état final explicite
AND
  - Aucune tâche n’est absente de l’état persistant

6. Tests de non-régression

Test ID Objet Observable Commentaire
TC-NR-01 Redémarrage service États des tâches États inchangés
TC-NR-02 Charge nominale Visibilité états Aucun état manquant

7. Tests négatifs et adversariaux

Test ID Situation abusive Résultat attendu Observable
TC-NEG-01 Interruption répétée Aucun état incohérent États persistés
TC-NEG-02 Échec massif de tâches Signal global d’anomalie Alertes visibles

8. Observabilité requise pour les tests

  • État persistant des tâches (liste + statut)
  • Signal explicite d’incident
  • Historique des transitions d’état
  • Indicateur de reprise automatique
  • Documentation opératoire accessible

9. Règles non testables

Règle Raison Impact
Aucune

10. Verdict QA

  • ✅ Testable intégralement
  • Aucune règle bloquante identifiée
  • La conformité peut être démontrée sans accès au code