Génération de tests fonctionnels 
Titre présentation | Conférencier 
Thomas Rabaix 
contact : thomas.rabaix@soleoweb.com -...
• Consultant via la société Soleoweb : expertise internet 
et spécialiste symfony. 
• Utilise symfony depuis 3 ans : 
– pl...
swToolboxPlugin - c’est quoi ? 
• un ensemble de class php qui peut être utile à vos 
projets symfony 
• un outil qui rajo...
• “functional tests validate a process and require a 
scenario. In symfony, you should write functional tests 
for all you...
– longs à écrire et pénibles car il faut connaitre les noms de tous 
les champs dans un formulaire 
– répétitifs, c’est so...
• Peut on faire disparaitre ces inconvenients ? 
• Comment ? en enregistrant un scénario qui utilise 
simplement l’applica...
• Création d’une application de démonstration 
• Mini cahier des charges : 
– knowledge base application (swKnowledgeBase)...
• Utilisation des plugins suivants : 
– sfDoctrineGuardPlugin : authentification 
– sfAdminDashPlugin : interface d’admini...
Activation 
• installer le package swToolboxPlugin 
– symfony plugin:install swToolboxPlugin 
– http://symfony-live.com/pl...
– Avec erreur 
– correction de l’erreur 
– Ajax pour lier une entrée avec d’autres entrées 
• Vérification : l’entrée doit...
Demonstration 
en video 
http://www.rabaix.net/en/2009/05/11/sflive-2009-paris 
contact : thomas.rabaix@soleoweb.com ‐ www...
• l’objet sfBrowser permet d’accéder au “sfContext” 
– récupération de toutes les informations de symfony 
– récupération ...
• Application disponible en version sandbox 
– http://soleoweb.com/uploads/sw_kb_sandbox.zip 
– A regarder 
• la class swK...
Questions ? 
✓ la mailing-list symfony-users@googlegroups.com 
✓ la prochaine application kb.soleoweb.com ;) 
✓ articles s...
Prochain SlideShare
Chargement dans…5
×

Symfony Live ~ Génération de tests fonctionnels

642 vues

Publié le

Génération de tests fonctionnels pour Symfony1

Publié dans : Technologie
0 commentaire
0 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

Aucun téléchargement
Vues
Nombre de vues
642
Sur SlideShare
0
Issues des intégrations
0
Intégrations
19
Actions
Partages
0
Téléchargements
6
Commentaires
0
J’aime
0
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

Symfony Live ~ Génération de tests fonctionnels

  1. 1. Génération de tests fonctionnels Titre présentation | Conférencier Thomas Rabaix contact : thomas.rabaix@soleoweb.com - www.soleoweb.com
  2. 2. • Consultant via la société Soleoweb : expertise internet et spécialiste symfony. • Utilise symfony depuis 3 ans : – plugins : sfLucenePlugin : port vers Doctrine et sf1.2 (Zend et Solr), swDoctrineAssetsLibraryPlugin : Doctrine et sf1.2, swToolboxPlugin : divers outils sympa – mailing list, bug reports contact : thomas.rabaix@soleoweb.com ‐ www.soleoweb.com Thomas Rabaix – symfony 1.0 et Propel – symfony 1.1 et Propel / Doctrine – symfony 1.2 et Doctrine • Contributions Génération de tests fonctionnels Thomas Rabaix
  3. 3. swToolboxPlugin - c’est quoi ? • un ensemble de class php qui peut être utile à vos projets symfony • un outil qui rajoute des fonctionnalités : – fil d’arianne – AJAX avec sfForm – sendMail ;-) – widgets : adresse avec google map, nested set doctrine, etc ... – lien entre application natif – et .... un générateur de tests fonctionnels contact : thomas.rabaix@soleoweb.com ‐ www.soleoweb.com Génération de tests fonctionnels Thomas Rabaix
  4. 4. • “functional tests validate a process and require a scenario. In symfony, you should write functional tests for all your actions...” [1] • ... dans l’idéal, les tests sont écrits avant le code ... contact : thomas.rabaix@soleoweb.com ‐ www.soleoweb.com Les tests fonctionnels Génération de tests fonctionnels Thomas Rabaix
  5. 5. – longs à écrire et pénibles car il faut connaitre les noms de tous les champs dans un formulaire – répétitifs, c’est souvent les mêmes lignes de codes qui reviennent – représentent des coups importants – permettent de tester une application web de manière automatique – permettent de prévenir les effets de bord lors de la maintenance ou lors de l’ajout de nouvelles fonctionnalités contact : thomas.rabaix@soleoweb.com ‐ www.soleoweb.com ... dans la réalité • Inconvénients • Avantages Génération de tests fonctionnels Thomas Rabaix
  6. 6. • Peut on faire disparaitre ces inconvenients ? • Comment ? en enregistrant un scénario qui utilise simplement l’application • A l’aide de quel outil ? le filtre swFilterFunctionalTest contact : thomas.rabaix@soleoweb.com ‐ www.soleoweb.com Inconvenients... vraiment ? Génération de tests fonctionnels Thomas Rabaix
  7. 7. • Création d’une application de démonstration • Mini cahier des charges : – knowledge base application (swKnowledgeBase) • accès seulement aux personnes authentifiées • chaque entrée est rattachée à une catégorie • il est possible de lier des entrées entre elles en fonction de la catégorie (AJAX) • options simples de recherche – c’est tout ! vous avez une journée !!! • ... et en plus il faut des tests fonctionnels contact : thomas.rabaix@soleoweb.com ‐ www.soleoweb.com Démonstration par l’exemple Génération de tests fonctionnels Thomas Rabaix
  8. 8. • Utilisation des plugins suivants : – sfDoctrineGuardPlugin : authentification – sfAdminDashPlugin : interface d’administration – swToolboxPlugin : contact : thomas.rabaix@soleoweb.com ‐ www.soleoweb.com swKnowledgeBase • test fonctionnel • ajax Génération de tests fonctionnels Thomas Rabaix
  9. 9. Activation • installer le package swToolboxPlugin – symfony plugin:install swToolboxPlugin – http://symfony-live.com/plugins/swToolboxPlugin • Editer le fichier filters.yml • Activer la bar de debug symfony contact : thomas.rabaix@soleoweb.com ‐ www.soleoweb.com Génération de tests fonctionnels Thomas Rabaix
  10. 10. – Avec erreur – correction de l’erreur – Ajax pour lier une entrée avec d’autres entrées • Vérification : l’entrée doit être présente dans la liste • Click sur édition • Suppression de l’entrée contact : thomas.rabaix@soleoweb.com ‐ www.soleoweb.com Scénario • Authentification sur l’application • Rajout d’une entrée Génération de tests fonctionnels Thomas Rabaix
  11. 11. Demonstration en video http://www.rabaix.net/en/2009/05/11/sflive-2009-paris contact : thomas.rabaix@soleoweb.com ‐ www.soleoweb.com Génération de tests fonctionnels Thomas Rabaix
  12. 12. • l’objet sfBrowser permet d’accéder au “sfContext” – récupération de toutes les informations de symfony – récupération des variables définies dans l’action • L’outil de génération de test : – fonctionne seulement si la session en cours est dans le bon “état” (supression des cookies) – peut avoir des incohérences avec les paramètres dynamiques dans les urls comme les identifiants. – permet de tester les actions AJAX contact : thomas.rabaix@soleoweb.com ‐ www.soleoweb.com Quelques notes Génération de tests fonctionnels Thomas Rabaix
  13. 13. • Application disponible en version sandbox – http://soleoweb.com/uploads/sw_kb_sandbox.zip – A regarder • la class swKbEntryForm : définition des champs et de l’ajax • doctrine.yml : définition du model de donnés • l’application frontend pour les options de liste • Demo en ligne disponible prochainement sur : contact : thomas.rabaix@soleoweb.com ‐ www.soleoweb.com swKnowledgeBase - demo – http://kb.soleoweb.com Génération de tests fonctionnels Thomas Rabaix
  14. 14. Questions ? ✓ la mailing-list symfony-users@googlegroups.com ✓ la prochaine application kb.soleoweb.com ;) ✓ articles sur http://rabaix.net contact : thomas.rabaix@soleoweb.com ‐ www.soleoweb.com Pour aller plus loin : Génération de tests fonctionnels Thomas Rabaix

×