groupe-meditation/docs/97_VALIDATION_AUTOMATISEE.md

97 lines
2.5 KiB
Markdown
Raw Normal View History

# Validation automatisée
Statut: runbook de validation
Public: testeurs, mainteneurs, sysadmin
Dernière révision: 2026-06-02
Ce document explique comment automatiser la validation sans remplacer le jugement humain nécessaire pour l'acceptabilité, la lisibilité et l'ergonomie.
## Commande locale
Depuis la racine du dépôt:
```bash
scripts/validate.sh
```
Cette commande exécute:
- compilation Python du backend et des scripts de déploiement;
- tests backend;
- build frontend;
- tests navigateur Playwright;
- syntax-check Ansible lorsque `ansible-playbook` est disponible.
Pour ignorer temporairement les tests navigateur:
```bash
SKIP_E2E=1 scripts/validate.sh
```
## Ce qui est automatisé
- règles métier testables par code;
- contrats de sécurité et de multi-groupe;
- présence des protections de concurrence;
- cristallisation des rapports;
- exposition correcte de l'accès sysadmin;
- page publique de sélection des groupes;
- accès sysadmin d'instance;
- changement du PIN sysadmin;
- liens publics Charte, Confidentialité et Découvrir;
- build frontend;
- validité syntaxique Ansible.
## Ce qui doit rester validé par un humain
- lisibilité des rapports PDF;
- confort de navigation sur petit téléphone;
- ton des textes destinés aux membres;
- acceptabilité sociale des processus;
- clarté des formulaires papier;
- compréhension par des membres non techniques.
## Ronde de validation recommandée
1. Exécuter `scripts/validate.sh`.
2. Déployer sur une VM vanille.
3. Exécuter `ansible-playbook ansible/verify.yml`.
4. Réinitialiser `Groupe Démonstration`.
5. Parcourir les scénarios du [plan de validation fonctionnelle](96_PLAN_VALIDATION.md).
6. Noter les écarts avec la page, l'action, le résultat obtenu et le résultat attendu.
## Tests Playwright
Les tests Playwright sont dans `frontend/e2e`.
Ils démarrent automatiquement Vite, simulent les réponses API nécessaires et exécutent les scénarios dans un navigateur mobile et desktop.
Commande directe:
```bash
cd frontend
npm run e2e
```
Pour installer le navigateur Chromium si nécessaire:
```bash
cd frontend
npx playwright install chromium
```
## Évolution prévue
La prochaine étape pertinente est d'élargir Playwright vers les parcours authentifiés complets:
- sélection de groupe;
- connexion membre et sysadmin;
- navigation mobile;
- rencontre complète;
- assemblée complète;
- trésorerie;
- journal;
- captures de rapports PDF.
Ces tests devront être ajoutés progressivement pour éviter une suite fragile.