PD-244 — Cahier de tests contractuel (v2)¶
1. Objet¶
Ce document definit les tests de validation de la story PD-244 pour garantir la conformite contractuelle des artefacts produits (matrices ISO/NF, registre des gaps, dashboard, tracabilite claims).
2. Regles generales de test¶
- Les validations portent sur les artefacts documentaires et YAML.
- Les tests automatisables DOIVENT etre scriptables (validation schema YAML, controles de coherence, controles de completude).
- Tout ecart bloquant invalide la livraison de l'etape.
3. Jeux de donnees et artefacts cibles¶
- PD-244-inventaire-reference.yaml
- PD-244-iso-14641-matrix.yaml
- PD-244-iso-14641-matrix.md
- PD-244-nf-z42-013-matrix.yaml
- PD-244-nf-z42-013-matrix.md
- PD-244-gaps.yaml
- PD-244-gaps.md
- PD-244-compliance-dashboard.md
4. Scenarios de validation YAML et matrices¶
TC-YAML-001 : Presence des matrices normatives¶
Objectif : Verifier que les deux matrices YAML sont produites. INV/CA couvert : INV-PD244-01, CA-PD244-01, CA-PD244-02
Given : Dossier des livrables PD-244. When : Je controle la presence des fichiers ISO et NF. Then : Les deux matrices YAML existent et sont lisibles.
Automatisable : Oui Methode : Controle de presence fichiers
TC-YAML-002 : Validite du schema canonique¶
Objectif : Verifier la conformite structurelle des matrices au schema section 4.2. INV/CA couvert : INV-PD244-02, INV-PD244-06, CA-PD244-01, CA-PD244-02, CA-PD244-05
Given : Matrices YAML ISO et NF. When : J'applique un validateur de schema. Then : Tous les champs obligatoires et types attendus sont conformes.
Automatisable : Oui Methode : YAML schema validator
TC-YAML-003 : Preuves verifiables pour statuts CONFORME/PARTIEL¶
Objectif : Garantir qu'aucune exigence CONFORME/PARTIEL n'est sans preuve verifiable. INV/CA couvert : INV-PD244-03, CA-PD244-03
Given : requirements[] des matrices. When : Je filtre les statuts CONFORME/PARTIEL et verifie evidence[].verifiable. Then : Chaque exigence ciblee contient au moins une preuve verifiable: true.
Automatisable : Oui Methode : Requete structuree sur YAML
TC-YAML-004 : Qualification HORS_PERIMETRE¶
Objectif : Verifier la presence d'une justification testable pour chaque HORS_PERIMETRE. INV/CA couvert : INV-PD244-05, CA-PD244-08
Given : requirements[] des matrices. When : Je selectionne les exigences avec status = HORS_PERIMETRE. Then : status_justification est renseigne et testable pour chaque occurrence.
Automatisable : Oui Methode : Controle de non-vide + pattern de justification
TC-YAML-005 : Coherence YAML vers Markdown¶
Objectif : Verifier l'absence de divergence semantique entre source YAML et rendu Markdown. INV/CA couvert : INV-PD244-06, CA-PD244-05
Given : couples {matrix.yaml, matrix.md} pour ISO et NF. When : Je compare les sections, exigences, statuts, preuves et gaps. Then : Aucune information du Markdown n'est hors YAML et aucune information YAML n'est omise.
Automatisable : Partiel Methode : Diff structurel + revue manuelle ciblee
TC-YAML-006 : Versions normatives ISO et NF¶
Objectif : Verifier que les versions de reference sont correctes. INV/CA couvert : CA-PD244-01, CA-PD244-02
Given : PD-244-iso-14641-matrix.yaml et PD-244-nf-z42-013-matrix.yaml. When : Je lis norm.id et norm.version de chaque matrice. Then : ISO norm.version = "2018" et NF norm.version = "2020".
Automatisable : Oui Methode : Assertion YAML
TC-YAML-007 : Tracabilite claims doc 41/42/43¶
Objectif : Verifier que chaque claim de conformite du perimetre (docs 41/42/43) est relie a au moins une exigence normative et une preuve. INV/CA couvert : INV-PD244-07, CA-PD244-09
Given : Mapping claims -> exigences -> preuves dans les artefacts PD-244. When : Je parcours chaque claim du perimetre documentaire 41/42/43. Then : Pour chaque claim, une exigence normative referencee et au moins une preuve verifiable sont presentes.
Automatisable : Oui Methode : Controle de graphe de tracabilite (claim->requirement->evidence)
5. Scenarios de validation gaps¶
TC-GAP-001 : Integrite du registre des gaps¶
Objectif : Verifier la structure et la qualite minimale de chaque gap. INV/CA couvert : INV-PD244-04, CA-PD244-04, CA-PD244-07
Given : PD-244-gaps.yaml. When : Je controle les champs obligatoires (gap_id, requirement_id, description, severity, planned_story, epic_parent, owner, status, target_date). Then : Chaque gap est complet, non ambigu et exploitable pour pilotage.
Automatisable : Oui Methode : Script YAML validator
TC-GAP-002 : Rattachement des remediations a PD-217¶
Objectif : Verifier que tous les gaps pointent vers l'epic parent contractuel. INV/CA couvert : INV-PD244-04, CA-PD244-04
Given : PD-244-gaps.yaml. When : Je controle epic_parent pour chaque gap. Then : Chaque gap a epic_parent = PD-217 et une planned_story renseignee.
Automatisable : Oui Methode : Verification de contraintes
TC-GAP-003 : Valeurs autorisees du statut de gap¶
Objectif : Verifier que le statut de suivi est borne aux valeurs contractuelles. INV/CA couvert : INV-PD244-04, CA-PD244-07
Given : PD-244-gaps.yaml. When : Je controle status. Then : status appartient strictement a {PLANNED, IN_PROGRESS, DONE}.
Automatisable : Oui Methode : Enum validator
TC-GAP-004 : Severite des gaps conforme a la table contractuelle¶
Objectif : Verifier la conformite des severites avec la section 4.5 de la specification. INV/CA couvert : CA-PD244-07
Given : PD-244-gaps.yaml. When : Je controle severity. Then : severity appartient a {CRITICAL, HIGH, MEDIUM, LOW}.
Automatisable : Oui Methode : Enum validator
6. Scenarios de validation dashboard et score¶
TC-SCORE-001 : Calcul deterministe du score global¶
Objectif : Verifier l'application de la formule section 4.4. INV/CA couvert : CA-PD244-06
Given : quality_checks des matrices et dashboard. When : Je recalcule le score avec la formule contractuelle. Then : Le score publie correspond au resultat calcule, sans ecart.
Automatisable : Oui Methode : Script de recalcul
TC-SCORE-002 : Completude du tableau de synthese¶
Objectif : Verifier la presence des indicateurs obligatoires par norme. INV/CA couvert : CA-PD244-06
Given : PD-244-compliance-dashboard.md. When : Je controle les colonnes de synthese. Then : Total exigences, repartition par statut, score global et taux de tracabilite sont presents pour ISO et NF.
Automatisable : Partiel Methode : Controle structure Markdown + revue manuelle
7. Matrice de tracabilite TC vers CA/INV¶
| Test case | INV couverts | CA couverts |
|---|---|---|
| TC-YAML-001 | INV-PD244-01 | CA-PD244-01, CA-PD244-02 |
| TC-YAML-002 | INV-PD244-02, INV-PD244-06 | CA-PD244-01, CA-PD244-02, CA-PD244-05 |
| TC-YAML-003 | INV-PD244-03 | CA-PD244-03 |
| TC-YAML-004 | INV-PD244-05 | CA-PD244-08 |
| TC-YAML-005 | INV-PD244-06 | CA-PD244-05 |
| TC-YAML-006 | - | CA-PD244-02 |
| TC-YAML-007 | INV-PD244-07 | CA-PD244-09 |
| TC-GAP-001 | INV-PD244-04 | CA-PD244-04, CA-PD244-07 |
| TC-GAP-002 | INV-PD244-04 | CA-PD244-04 |
| TC-GAP-003 | INV-PD244-04 | CA-PD244-07 |
| TC-GAP-004 | - | CA-PD244-07 |
| TC-SCORE-001 | - | CA-PD244-06 |
| TC-SCORE-002 | - | CA-PD244-06 |
8. Checklist de revue manuelle¶
- Tous les fichiers attendus existent et sont nommes exactement selon la specification PD-244.
- Aucun test ne reference un INV/CA hors perimetre PD-244.
- Les statuts utilises sont strictement dans l'enum autorise et coherents entre YAML/MD.
- Aucun CONFORME ou PARTIEL sans preuve verifiable et consultable.
- Tous les PARTIEL/NON_IMPLEMENTE ont un gap et une story planifiee.
- Tous les HORS_PERIMETRE ont une justification testable, factuelle et non generique.
- Les claims docs 41/42/43 sont tracables vers exigence et preuve.
- Les matrices Markdown sont des vues fideles des YAML (pas de divergences).
- Le dashboard contient score global, repartition des statuts et liste consolidee des stories de gap.