173 lines
4.0 KiB
Markdown
173 lines
4.0 KiB
Markdown
# 🧪 Comment Tester la Détection de Workflows
|
|
|
|
## 🎯 Objectif
|
|
|
|
Tester le système de détection de workflows qui vient d'être implémenté.
|
|
|
|
## ✅ Prérequis
|
|
|
|
- ✅ SessionManager créé
|
|
- ✅ WorkflowDetector créé
|
|
- ✅ EventCapture modifié
|
|
- ✅ Tout compile correctement
|
|
|
|
## 🧪 Test 1 : Script Automatique
|
|
|
|
### Lancer le Test
|
|
|
|
```bash
|
|
geniusia2/venv/bin/python test_workflow_suggestion.py
|
|
```
|
|
|
|
### Ce que fait le test
|
|
|
|
1. **Crée 3 sessions similaires** :
|
|
- Session 1 : Clic → Type → Clic
|
|
- Session 2 : Clic → Type → Clic
|
|
- Session 3 : Clic → Type → Clic
|
|
|
|
2. **Détecte automatiquement le workflow**
|
|
- Analyse les sessions
|
|
- Calcule la similarité
|
|
- Crée le workflow si >= 75%
|
|
|
|
3. **Suggère le workflow**
|
|
- Commence une 4ème session
|
|
- Fait les 2 premières actions
|
|
- Vérifie si suggestion apparaît
|
|
|
|
### Résultat Attendu
|
|
|
|
```
|
|
🎉 SUGGESTION CRÉÉE !
|
|
Type: workflow
|
|
Workflow: Click → Type → Click
|
|
Étape: 2/3
|
|
Prochaine action: Clic sur OnlyOffice
|
|
Confiance: 89%
|
|
Répétitions: 3x
|
|
```
|
|
|
|
## 🧪 Test 2 : Test Manuel
|
|
|
|
### Lancer l'Application
|
|
|
|
```bash
|
|
cd geniusia2
|
|
./run.sh
|
|
```
|
|
|
|
### Effectuer un Workflow Répété
|
|
|
|
**Exemple : Ouvrir OnlyOffice**
|
|
|
|
1. **Jour 1** (ou Session 1) :
|
|
- Clic sur le lanceur
|
|
- Tape "office"
|
|
- Clic sur OnlyOffice
|
|
- Clic "Nouveau document"
|
|
|
|
2. **Attendre 5 minutes** (ou forcer la fin de session)
|
|
|
|
3. **Jour 2** (ou Session 2) :
|
|
- Refaire exactement les mêmes actions
|
|
|
|
4. **Attendre 5 minutes**
|
|
|
|
5. **Jour 3** (ou Session 3) :
|
|
- Refaire exactement les mêmes actions
|
|
|
|
### Vérifier la Détection
|
|
|
|
Après la 3ème session, le système devrait :
|
|
- ✅ Détecter le workflow
|
|
- ✅ Logger "workflow_detected"
|
|
- ✅ Créer un Workflow avec 4 étapes
|
|
|
|
### Tester la Suggestion
|
|
|
|
**Jour 4** (ou Session 4) :
|
|
- Commence le workflow (2 premières actions)
|
|
- Le système devrait suggérer de continuer
|
|
|
|
## 📊 Vérifier les Logs
|
|
|
|
```bash
|
|
# Voir les logs du jour
|
|
cat geniusia2/data/logs/logs_$(date +%Y-%m-%d).json | jq .
|
|
|
|
# Filtrer les workflows
|
|
cat geniusia2/data/logs/logs_$(date +%Y-%m-%d).json | jq 'select(.action=="workflow_detected")'
|
|
|
|
# Filtrer les sessions
|
|
cat geniusia2/data/logs/logs_$(date +%Y-%m-%d).json | jq 'select(.action=="session_completed")'
|
|
```
|
|
|
|
## 🔧 Ajuster les Seuils
|
|
|
|
Si la détection ne fonctionne pas bien, ajuster dans `config.py` :
|
|
|
|
```python
|
|
"workflow": {
|
|
# Timeout de session (secondes)
|
|
"session_timeout": 300, # Réduire à 60 pour tests rapides
|
|
|
|
# Nombre minimum de répétitions
|
|
"min_repetitions": 3, # Réduire à 2 pour tests
|
|
|
|
# Seuil de similarité
|
|
"similarity_threshold": 0.75 # Réduire à 0.65 pour plus de détections
|
|
}
|
|
```
|
|
|
|
## ⚠️ Problèmes Courants
|
|
|
|
### Aucun Workflow Détecté
|
|
|
|
**Causes** :
|
|
- Pas assez de répétitions (< 3)
|
|
- Actions trop différentes (similarité < 75%)
|
|
- Sessions pas finalisées
|
|
|
|
**Solutions** :
|
|
1. Vérifier les logs : `cat geniusia2/data/logs/logs_*.json`
|
|
2. Réduire `min_repetitions` à 2
|
|
3. Réduire `similarity_threshold` à 0.65
|
|
4. Forcer la fin de session : `event_capture.force_finalize_session()`
|
|
|
|
### Workflow Détecté Mais Pas de Suggestion
|
|
|
|
**Causes** :
|
|
- Début de workflow pas reconnu
|
|
- Seuil de confiance trop élevé
|
|
|
|
**Solutions** :
|
|
1. Vérifier que les 2 premières actions sont identiques
|
|
2. Réduire `similarity_threshold` dans `assist`
|
|
3. Vérifier les logs de suggestion
|
|
|
|
## ✅ Checklist de Test
|
|
|
|
- [ ] Test automatique lancé (`test_workflow_suggestion.py`)
|
|
- [ ] Workflow détecté dans les logs
|
|
- [ ] Suggestion créée
|
|
- [ ] Test manuel effectué (3 sessions)
|
|
- [ ] Workflow détecté manuellement
|
|
- [ ] Suggestion apparaît au début de la 4ème session
|
|
- [ ] Logs vérifiés
|
|
- [ ] Seuils ajustés si nécessaire
|
|
|
|
## 🎊 Résultat Attendu
|
|
|
|
Après les tests, tu devrais avoir :
|
|
- ✅ Workflows détectés automatiquement
|
|
- ✅ Suggestions de workflows fonctionnelles
|
|
- ✅ Logs complets
|
|
- ✅ Système validé
|
|
|
|
**Prêt pour l'intégration dans la GUI ! 🚀**
|
|
|
|
---
|
|
|
|
**Créé le 19 Novembre 2025**
|