7.4 KiB
Tests d'Intégration Finance Workflow - Guide Unique
Date: 2026-03-14 Objectif: Tester l'intégration mobile-backend avec les VRAIS utilisateurs Keycloak existants
✅ État Actuel Keycloak (Vérifié)
Realm: unionflow ✓ Existe
Client: unionflow-mobile ✓ Existe
Utilisateurs: 11 utilisateurs déjà créés
👥 Utilisateurs de Test Disponibles
Pour les Tests Finance Workflow, utiliser:
1. SUPER_ADMIN (tous les droits)
- Email:
superadmin@unionflow.test - Mot de passe: (demander à l'équipe ou réinitialiser via Keycloak Admin)
- Rôles: SUPER_ADMIN
- Peut: Approuver LEVEL1/2/3, créer budgets, tout consulter
2. ADMIN_ORGANISATION (approbateur)
- Email:
admin.meska@unionflow.testOUadmin.mukefi@unionflow.test - Mot de passe: (idem)
- Rôles: ADMIN_ORGANISATION, USER
- Peut: Approuver LEVEL1/2, créer budgets, consulter stats
3. MEMBRE_ACTIF (demandeur)
- Email:
membre.meska@unionflow.test - Mot de passe: (idem)
- Rôles: MEMBRE, MEMBRE_ACTIF, USER
- Peut: Créer demandes de cotisation, consulter ses propres demandes
🚀 Démarrage Rapide
1. Services Backend (3 commandes)
# Terminal 1: Quarkus
cd unionflow/unionflow-server-impl-quarkus
mvn compile quarkus:dev -D"quarkus.http.port=8085"
# Terminal 2: Keycloak (si pas démarré)
cd unionflow
docker-compose up -d keycloak
# Terminal 3: PostgreSQL (si pas démarré)
docker-compose up -d postgres
Vérifications:
- ✓ Quarkus: http://localhost:8085/q/health
- ✓ Keycloak: http://localhost:8180
- ✓ PostgreSQL: port 5432
2. App Mobile Flutter
# Terminal 4: App mobile
cd unionflow/unionflow-mobile-apps
# Android
flutter run --dart-define=ENV=dev
# iOS
flutter run --dart-define=ENV=dev -d ios
# Chrome (debug rapide)
flutter run -d chrome --dart-define=ENV=dev
Note: L'URL backend (http://localhost:8085 ou http://10.0.2.2:8085) est configurée automatiquement via AppConfig en mode dev.
🧪 Scénario de Test (15 minutes)
Étape 1: Login Membre
-
Dans l'app mobile:
- Login:
membre.meska@unionflow.test - Password: (voir avec l'équipe)
- Login:
-
Créer une cotisation:
- Menu → "Contributions" ou "Mes Cotisations"
- "+" → Nouvelle contribution
- Montant: 50,000 XOF
- Période: Mars 2026
- Soumettre
-
Vérifier:
- ✅ Message "Demande créée, en attente d'approbation"
- ✅ Menu "Finance Workflow" → Demande visible avec statut PENDING
Étape 2: Login Admin → Approuver
-
Se déconnecter et se reconnecter:
- Login:
admin.meska@unionflow.test
- Login:
-
Consulter les approbations:
- Menu → "Finance Workflow" → "Approbations en attente"
- ✅ Badge avec nombre d'approbations
- ✅ La cotisation de membre.meska apparaît
-
Approuver la transaction:
- Cliquer sur la carte
- Bouton "Approuver"
- Commentaire (optionnel): "Cotisation conforme"
- Confirmer
-
Vérifier:
- ✅ Toast "Transaction approuvée avec succès"
- ✅ Statut = VALIDATED (car LEVEL1 = 1 approbation suffit)
- ✅ Badge vert "Approuvé"
Étape 3: Créer un Budget (Admin)
-
Toujours connecté en tant qu'admin:
- Menu → "Finance Workflow" → "Budgets"
- "+" → Nouveau budget
-
Remplir le formulaire:
Nom: Budget Test Mobile Mars 2026 Période: Mensuel Année: 2026 Mois: 3 Devise: XOF -
Ajouter 3 lignes budgétaires:
- Cotisations: 2,000,000 XOF
- Épargne: 1,000,000 XOF
- Opérationnel: 500,000 XOF
-
Valider et vérifier:
- ✅ Budget créé (Total = 3,500,000 XOF)
- ✅ Détail visible avec les 3 lignes
- ✅ Tracking affiche 0% réalisé
✅ Checklist de Validation
Authentification & Sécurité
- Login membre réussi avec JWT
- Login admin réussi avec JWT
- Endpoints protégés (401 sans token)
- Rôles respectés (membre ne peut pas approuver)
Workflow Approbations
- Création demande via module Contributions
- Demande apparaît dans Finance Workflow (PENDING)
- Bouton "Approuver" visible uniquement pour admin
- Approbation fonctionne (POST → 200 OK)
- Statut mis à jour (VALIDATED)
- Toast de succès affiché
- Compteur approbations mis à jour
Gestion Budgets
- Création budget via formulaire
- 3 lignes budgétaires ajoutées
- Total calculé automatiquement (3.5M)
- Détail budget affiché
- Tracking budgétaire accessible (0% initialement)
Performance & UX
- Chargement < 2 secondes
- Aucun lag / freeze
- Animations fluides
- Pull to refresh fonctionne
📊 Logs à Vérifier
Backend Quarkus (Terminal 1)
INFO ApprovalService - Approbation de la transaction ...
INFO BudgetService - Création d'un budget ...
Mobile Flutter (Console)
[INFO] Loading approvals for organization ...
[SUCCESS] Transaction approved successfully
[INFO] Creating budget: Budget Test Mobile Mars 2026
🆘 Troubleshooting
Problème: "Mot de passe inconnu pour les utilisateurs de test"
→ Solution: Réinitialiser via Keycloak Admin
1. http://localhost:8180/admin/master/console
2. Login: admin / admin
3. Realm: unionflow → Users
4. Sélectionner utilisateur → Onglet Credentials
5. Set password (Temporary: OFF)
Problème: "App ne se connecte pas au backend"
→ Solution: Vérifier URL backend dans AppConfig
- Android émulateur:
http://10.0.2.2:8085 - iOS/Chrome:
http://localhost:8085
Problème: "Erreur 401 Unauthorized"
→ Solution: Vérifier que Keycloak tourne et token JWT valide
Problème: "Bouton Approuver invisible/grisé"
→ Solution: Se connecter avec admin.meska@unionflow.test ou superadmin@unionflow.test
📝 Rapport de Test
Après les tests, compléter:
### Résultats
Date: ___________
Testeur: ___________
#### Scénario 1: Workflow Approbation
- Création demande: ☐ ✅ ☐ ❌
- Approbation réussie: ☐ ✅ ☐ ❌
- Statut mis à jour: ☐ ✅ ☐ ❌
#### Scénario 2: Gestion Budgets
- Création budget: ☐ ✅ ☐ ❌
- Lignes ajoutées: ☐ ✅ ☐ ❌
- Tracking affiché: ☐ ✅ ☐ ❌
#### Problèmes Identifiés
1. [Description]
- Gravité: Bloquant / Majeur / Mineur
- Étapes: ...
#### Conclusion
- ☐ ✅ Intégration VALIDÉE
- ☐ ⚠️ Problèmes mineurs
- ☐ ❌ Problèmes bloquants
🎯 Fichiers de Documentation Consolidés
Après nettoyage, 4 fichiers restants (DRY) :
-
TESTS_INTEGRATION_FINANCE_WORKFLOW.md (CE FICHIER)
- Guide unique de test intégration avec vrais utilisateurs
-
FINANCE_WORKFLOW_BACKEND_COMPLETE.md
- Documentation technique backend (architecture, code)
-
FINANCE_WORKFLOW_TEST_CHECKLIST.md
- Checklist détaillée P0 backend (migration, démarrage)
-
FINANCE_WORKFLOW_TEST_REPORT.md
- Rapport de tests backend (endpoints REST validés)
Obsolètes (supprimés):
- FINANCE_WORKFLOW_MANUAL_TEST_GUIDE.md (redondant)
- FINANCE_WORKFLOW_INTEGRATION_MOBILE.md (redondant)
- START_INTEGRATION_TEST.md (redondant)
- FINANCE_WORKFLOW_SESSION_SUMMARY.md (obsolète)
- FINANCE_WORKFLOW_FINAL_STATUS.md (obsolète)
- START_QUARKUS_DEV.md (redondant)
Prêt à tester ! 🚀
Utilisez les VRAIS utilisateurs Keycloak existants - pas besoin d'en créer de nouveaux.