Initial commit
This commit is contained in:
364
docs/guides/GUIDE_TEST_MODE_ASSISTE.md
Normal file
364
docs/guides/GUIDE_TEST_MODE_ASSISTE.md
Normal file
@@ -0,0 +1,364 @@
|
||||
# 🧪 Guide de Test - Mode Assisté
|
||||
|
||||
## 🎯 Objectif
|
||||
|
||||
Tester le Mode Assisté en conditions réelles pour valider son fonctionnement.
|
||||
|
||||
## ✅ Prérequis
|
||||
|
||||
1. Tous les tests unitaires passent :
|
||||
```bash
|
||||
geniusia2/venv/bin/python test_mode_assiste_complet.py
|
||||
```
|
||||
Résultat attendu : 4/4 tests réussis ✅
|
||||
|
||||
2. L'application se lance :
|
||||
```bash
|
||||
cd geniusia2
|
||||
./run.sh
|
||||
```
|
||||
|
||||
## 📋 Scénarios de Test
|
||||
|
||||
### Scénario 1 : Apprentissage Simple
|
||||
|
||||
**Objectif** : Créer une tâche simple et vérifier qu'elle est apprise.
|
||||
|
||||
**Étapes** :
|
||||
|
||||
1. **Lancer l'application**
|
||||
```bash
|
||||
cd geniusia2
|
||||
./run.sh
|
||||
```
|
||||
|
||||
2. **Démarrer la capture**
|
||||
- Cliquer sur "Start"
|
||||
- Vérifier que le statut passe à "Running"
|
||||
|
||||
3. **Effectuer une action répétitive (3x)**
|
||||
- Exemple : Cliquer 3 fois sur le même bouton
|
||||
- Attendre 1-2 secondes entre chaque clic
|
||||
- Observer les logs
|
||||
|
||||
4. **Vérifier la création de tâche**
|
||||
- Regarder les logs : "Pattern détecté"
|
||||
- Vérifier : "Tâche créée"
|
||||
- Noter le nom de la tâche
|
||||
|
||||
5. **Arrêter la capture**
|
||||
- Cliquer sur "Stop"
|
||||
|
||||
**Résultat attendu** :
|
||||
- ✅ Pattern détecté après 3 actions
|
||||
- ✅ Tâche créée avec un nom descriptif
|
||||
- ✅ Fichiers créés dans `data/user_profiles/`
|
||||
|
||||
### Scénario 2 : Suggestion Simple
|
||||
|
||||
**Objectif** : Vérifier qu'une suggestion apparaît pour une action similaire.
|
||||
|
||||
**Étapes** :
|
||||
|
||||
1. **Avoir une tâche apprise** (Scénario 1)
|
||||
|
||||
2. **Redémarrer la capture**
|
||||
- Cliquer sur "Start"
|
||||
|
||||
3. **Effectuer une action similaire**
|
||||
- Faire la même action qu'avant (1 fois)
|
||||
- Attendre quelques secondes
|
||||
|
||||
4. **Observer la suggestion**
|
||||
- Un overlay devrait apparaître
|
||||
- Vérifier le contenu :
|
||||
- Nom de la tâche
|
||||
- Confiance (%)
|
||||
- Instructions (Entrée/Échap/Alt+C)
|
||||
|
||||
**Résultat attendu** :
|
||||
- ✅ Overlay apparaît après l'action
|
||||
- ✅ Confiance >= 75%
|
||||
- ✅ Nom de tâche correct
|
||||
- ✅ Instructions visibles
|
||||
|
||||
### Scénario 3 : Acceptation de Suggestion
|
||||
|
||||
**Objectif** : Tester l'exécution automatique d'une suggestion.
|
||||
|
||||
**Étapes** :
|
||||
|
||||
1. **Avoir une suggestion affichée** (Scénario 2)
|
||||
|
||||
2. **Accepter la suggestion**
|
||||
- Appuyer sur **Entrée**
|
||||
|
||||
3. **Observer l'exécution**
|
||||
- Regarder les logs : "Suggestion acceptée"
|
||||
- Observer l'exécution automatique
|
||||
- Vérifier le résultat
|
||||
|
||||
4. **Vérifier la notification**
|
||||
- Message de succès/échec
|
||||
- Nombre d'actions exécutées
|
||||
|
||||
**Résultat attendu** :
|
||||
- ✅ Suggestion acceptée
|
||||
- ✅ Actions exécutées automatiquement
|
||||
- ✅ Notification de succès
|
||||
- ✅ Overlay disparaît
|
||||
|
||||
### Scénario 4 : Refus de Suggestion
|
||||
|
||||
**Objectif** : Tester le refus d'une suggestion.
|
||||
|
||||
**Étapes** :
|
||||
|
||||
1. **Avoir une suggestion affichée** (Scénario 2)
|
||||
|
||||
2. **Refuser la suggestion**
|
||||
- Appuyer sur **Échap**
|
||||
|
||||
3. **Observer le comportement**
|
||||
- Regarder les logs : "Suggestion rejetée"
|
||||
- Vérifier que l'overlay disparaît
|
||||
- Vérifier qu'aucune action n'est exécutée
|
||||
|
||||
**Résultat attendu** :
|
||||
- ✅ Suggestion rejetée
|
||||
- ✅ Aucune action exécutée
|
||||
- ✅ Overlay disparaît
|
||||
- ✅ Notification de refus
|
||||
|
||||
### Scénario 5 : Timeout de Suggestion
|
||||
|
||||
**Objectif** : Vérifier que la suggestion expire après 10 secondes.
|
||||
|
||||
**Étapes** :
|
||||
|
||||
1. **Avoir une suggestion affichée** (Scénario 2)
|
||||
|
||||
2. **Ne rien faire**
|
||||
- Attendre 10 secondes
|
||||
- Ne pas appuyer sur de touches
|
||||
|
||||
3. **Observer le timeout**
|
||||
- Regarder les logs : "Suggestion expirée"
|
||||
- Vérifier que l'overlay disparaît
|
||||
|
||||
**Résultat attendu** :
|
||||
- ✅ Suggestion expire après 10s
|
||||
- ✅ Overlay disparaît
|
||||
- ✅ Aucune action exécutée
|
||||
- ✅ Log de timeout
|
||||
|
||||
### Scénario 6 : Actions Multiples
|
||||
|
||||
**Objectif** : Tester une tâche avec plusieurs actions.
|
||||
|
||||
**Étapes** :
|
||||
|
||||
1. **Créer une tâche complexe**
|
||||
- Effectuer une séquence : clic → type → clic
|
||||
- Répéter 3 fois la même séquence
|
||||
|
||||
2. **Vérifier la création**
|
||||
- Tâche créée avec plusieurs actions
|
||||
- Signatures pour chaque action
|
||||
|
||||
3. **Tester la suggestion**
|
||||
- Refaire la première action
|
||||
- Accepter la suggestion
|
||||
|
||||
4. **Observer l'exécution**
|
||||
- Toutes les actions sont rejouées
|
||||
- Dans le bon ordre
|
||||
- Avec les bons délais
|
||||
|
||||
**Résultat attendu** :
|
||||
- ✅ Tâche multi-actions créée
|
||||
- ✅ Suggestion apparaît
|
||||
- ✅ Toutes les actions rejouées
|
||||
- ✅ Ordre correct
|
||||
|
||||
### Scénario 7 : Variations d'Interface
|
||||
|
||||
**Objectif** : Vérifier l'adaptation aux changements d'interface.
|
||||
|
||||
**Étapes** :
|
||||
|
||||
1. **Créer une tâche** sur une fenêtre
|
||||
|
||||
2. **Modifier légèrement l'interface**
|
||||
- Déplacer la fenêtre
|
||||
- Redimensionner
|
||||
- Changer de thème (si possible)
|
||||
|
||||
3. **Tester la suggestion**
|
||||
- Refaire l'action
|
||||
- Accepter la suggestion
|
||||
|
||||
4. **Observer l'adaptation**
|
||||
- Recherche visuelle fonctionne
|
||||
- Élément trouvé malgré les changements
|
||||
- Action exécutée correctement
|
||||
|
||||
**Résultat attendu** :
|
||||
- ✅ Élément trouvé malgré les changements
|
||||
- ✅ Confiance >= 70%
|
||||
- ✅ Action exécutée correctement
|
||||
|
||||
## 📊 Grille d'Évaluation
|
||||
|
||||
### Fonctionnalités de Base
|
||||
|
||||
| Fonctionnalité | Testé | Résultat | Notes |
|
||||
|----------------|-------|----------|-------|
|
||||
| Apprentissage simple | ☐ | ☐ Pass ☐ Fail | |
|
||||
| Suggestion apparaît | ☐ | ☐ Pass ☐ Fail | |
|
||||
| Acceptation (Entrée) | ☐ | ☐ Pass ☐ Fail | |
|
||||
| Refus (Échap) | ☐ | ☐ Pass ☐ Fail | |
|
||||
| Timeout (10s) | ☐ | ☐ Pass ☐ Fail | |
|
||||
|
||||
### Fonctionnalités Avancées
|
||||
|
||||
| Fonctionnalité | Testé | Résultat | Notes |
|
||||
|----------------|-------|----------|-------|
|
||||
| Actions multiples | ☐ | ☐ Pass ☐ Fail | |
|
||||
| Variations d'interface | ☐ | ☐ Pass ☐ Fail | |
|
||||
| Confiance >= 75% | ☐ | ☐ Pass ☐ Fail | |
|
||||
| Exécution correcte | ☐ | ☐ Pass ☐ Fail | |
|
||||
|
||||
### Interface Utilisateur
|
||||
|
||||
| Aspect | Testé | Résultat | Notes |
|
||||
|--------|-------|----------|-------|
|
||||
| Overlay visible | ☐ | ☐ Pass ☐ Fail | |
|
||||
| Informations claires | ☐ | ☐ Pass ☐ Fail | |
|
||||
| Réactivité | ☐ | ☐ Pass ☐ Fail | |
|
||||
| Notifications | ☐ | ☐ Pass ☐ Fail | |
|
||||
|
||||
## 🐛 Problèmes Connus
|
||||
|
||||
### Problème 1 : Pas de Suggestion
|
||||
|
||||
**Symptôme** : Aucune suggestion n'apparaît après une action similaire.
|
||||
|
||||
**Causes possibles** :
|
||||
- Confiance < 75%
|
||||
- Pas de tâche similaire dans l'index
|
||||
- Contexte trop différent
|
||||
|
||||
**Solutions** :
|
||||
1. Vérifier les logs : "Similarité: X%"
|
||||
2. Baisser le seuil dans `config.yaml` : `similarity_threshold: 0.65`
|
||||
3. Recréer la tâche avec plus d'exemples
|
||||
|
||||
### Problème 2 : Exécution Échoue
|
||||
|
||||
**Symptôme** : La suggestion est acceptée mais l'exécution échoue.
|
||||
|
||||
**Causes possibles** :
|
||||
- Élément non trouvé
|
||||
- Interface a trop changé
|
||||
- Permissions insuffisantes
|
||||
|
||||
**Solutions** :
|
||||
1. Vérifier les logs : "Élément non trouvé"
|
||||
2. Refaire l'apprentissage
|
||||
3. Vérifier les permissions (X11, Wayland)
|
||||
|
||||
### Problème 3 : Overlay ne Disparaît Pas
|
||||
|
||||
**Symptôme** : L'overlay reste affiché après acceptation/refus.
|
||||
|
||||
**Causes possibles** :
|
||||
- Bug dans la GUI
|
||||
- Callback non appelé
|
||||
|
||||
**Solutions** :
|
||||
1. Appuyer sur Échap
|
||||
2. Redémarrer l'application
|
||||
3. Vérifier les logs
|
||||
|
||||
## 📝 Rapport de Test
|
||||
|
||||
### Informations Système
|
||||
|
||||
- **OS** : Linux / Windows / macOS
|
||||
- **Version Python** : 3.12
|
||||
- **Date** : ___________
|
||||
- **Testeur** : ___________
|
||||
|
||||
### Résultats Globaux
|
||||
|
||||
- **Scénarios testés** : ___ / 7
|
||||
- **Scénarios réussis** : ___ / 7
|
||||
- **Taux de réussite** : ___%
|
||||
|
||||
### Observations
|
||||
|
||||
**Points positifs** :
|
||||
-
|
||||
-
|
||||
-
|
||||
|
||||
**Points à améliorer** :
|
||||
-
|
||||
-
|
||||
-
|
||||
|
||||
**Bugs trouvés** :
|
||||
-
|
||||
-
|
||||
-
|
||||
|
||||
### Recommandations
|
||||
|
||||
**Priorité Haute** :
|
||||
-
|
||||
-
|
||||
|
||||
**Priorité Moyenne** :
|
||||
-
|
||||
-
|
||||
|
||||
**Priorité Basse** :
|
||||
-
|
||||
-
|
||||
|
||||
## 🎯 Critères de Validation
|
||||
|
||||
Le Mode Assisté est considéré comme **validé** si :
|
||||
|
||||
✅ Au moins 5/7 scénarios passent
|
||||
✅ Aucun bug bloquant
|
||||
✅ Confiance >= 75% pour les suggestions
|
||||
✅ Exécution réussie >= 80% du temps
|
||||
✅ Interface utilisateur claire et réactive
|
||||
|
||||
## 🚀 Après les Tests
|
||||
|
||||
### Si Validation OK
|
||||
|
||||
1. Documenter les résultats
|
||||
2. Passer au Mode Autopilot
|
||||
3. Implémenter les transitions
|
||||
|
||||
### Si Validation KO
|
||||
|
||||
1. Identifier les problèmes
|
||||
2. Prioriser les corrections
|
||||
3. Corriger et re-tester
|
||||
|
||||
## 📞 Support
|
||||
|
||||
En cas de problème :
|
||||
|
||||
1. Vérifier les logs : `geniusia2/data/logs/`
|
||||
2. Lancer les tests unitaires : `test_mode_assiste_complet.py`
|
||||
3. Consulter la documentation : `MODE_ASSISTE_FINAL.md`
|
||||
|
||||
---
|
||||
|
||||
**Bon test ! 🧪**
|
||||
Reference in New Issue
Block a user