Files
unionflow-mobile-apps/docs/TESTS_INTEGRATION_FINANCE_WORKFLOW.md
dahoud d094d6db9c Initial commit: unionflow-mobile-apps
Application Flutter complète (sans build artifacts).

Signed-off-by: lions dev Team
2026-03-15 16:30:08 +00:00

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.test OU admin.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:


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

  1. Dans l'app mobile:

    • Login: membre.meska@unionflow.test
    • Password: (voir avec l'équipe)
  2. Créer une cotisation:

    • Menu → "Contributions" ou "Mes Cotisations"
    • "+" → Nouvelle contribution
    • Montant: 50,000 XOF
    • Période: Mars 2026
    • Soumettre
  3. Vérifier:

    • Message "Demande créée, en attente d'approbation"
    • Menu "Finance Workflow" → Demande visible avec statut PENDING

Étape 2: Login Admin → Approuver

  1. Se déconnecter et se reconnecter:

    • Login: admin.meska@unionflow.test
  2. Consulter les approbations:

    • Menu → "Finance Workflow" → "Approbations en attente"
    • Badge avec nombre d'approbations
    • La cotisation de membre.meska apparaît
  3. Approuver la transaction:

    • Cliquer sur la carte
    • Bouton "Approuver"
    • Commentaire (optionnel): "Cotisation conforme"
    • Confirmer
  4. 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)

  1. Toujours connecté en tant qu'admin:

    • Menu → "Finance Workflow" → "Budgets"
    • "+" → Nouveau budget
  2. Remplir le formulaire:

    Nom: Budget Test Mobile Mars 2026
    Période: Mensuel
    Année: 2026
    Mois: 3
    Devise: XOF
    
  3. Ajouter 3 lignes budgétaires:

    • Cotisations: 2,000,000 XOF
    • Épargne: 1,000,000 XOF
    • Opérationnel: 500,000 XOF
  4. 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) :

  1. TESTS_INTEGRATION_FINANCE_WORKFLOW.md (CE FICHIER)

    • Guide unique de test intégration avec vrais utilisateurs
  2. FINANCE_WORKFLOW_BACKEND_COMPLETE.md

    • Documentation technique backend (architecture, code)
  3. FINANCE_WORKFLOW_TEST_CHECKLIST.md

    • Checklist détaillée P0 backend (migration, démarrage)
  4. 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.