Flex / ActionScript  Tests Unitaires     et TDD     2012 - 06 - 14
Mathurin Body(@mathurin_body)Christophe Keromen   (@ckeromen)
Mathurin Body   (@mathurin_body)   Christophe Keromen      (@ckeromen)en continuelle amélioration
Le Test Unitaire consiste à prendre   la plus petite partie du code,     isolée de tout autre facteur et à vérifier quelle...
Isolation• Le résultat du test ne doit pas être affecté par • dautres objets • létat global• Lors de léchec dun test unita...
Le Test dIntégration consiste à assembler des portions de code déjà testées unitairement et àvérifier que le comportement ...
Integration  En règle générale, à partir du moment où  lon utilise lun des termes suivants, nous  sommes en train de discu...
Le Test Functionnel sattache à enregistrer et     rejouer les interactions avec lapplication. Il est extrêmement important...
Flex Unit
Tests Unitaires et Flex / ActionScript 3FlexUnit est fourni avec Flash Builder 4.6, implémente xUnitFB 4.6 prend en charge...
Interface Utilisateur ?
Interface Utilisateur ?• Lorsque la Logique nest pas couplée  avec la Vue, la Logique peut être  mise sous Test Unitaire.
Interface Utilisateur ?• Lorsque la Logique nest pas couplée  avec la Vue, la Logique peut être  mise sous Test Unitaire.•...
Interface Utilisateur ?• Lorsque la Logique nest pas couplée  avec la Vue, la Logique peut être  mise sous Test Unitaire.•...
Interface Utilisateur ?• Lorsque la Logique nest pas couplée  avec la Vue, la Logique peut être  mise sous Test Unitaire.•...
Interface Utilisateur ?• Lorsque la Logique nest pas couplée  avec la Vue, la Logique peut être  mise sous Test Unitaire.•...
Interface Utilisateur ?Le test des composants UI est beaucoup plus complexe, ex.:FlexUnit4Examples/flexUnitTests.FlexUnit4...
http://www.slideshare.net/anupom98/introduction-to-tdd-with-flexunit
http://www.slideshare.net/anupom98/introduction-to-tdd-with-flexunit
Flex UnitTesting Demo       MobileCalc
Raccourcis Flash Builder:• Alt+Shift+A, FExécute tous les tests FlexUnit du projet.• Alt+Shift+E, FExécute les tests FlexU...
http://www.slideshare.net/anupom98/introduction-to-tdd-with-flexunit
TDDeXtreme Unit Testing
TDD   eXtreme Unit TestingÉcrivez les tests en premier !
TDD   eXtreme Unit TestingÉcrivez les tests en premier !     AVANT DE CODER
Combien ont déjà fait du TDD ?Combien ont essayé de faire du TDD etabandonné ?Combien ont toujours rêvé de se mettre au TD...
http://www.slideshare.net/anupom98/introduction-to-tdd-with-flexunit
Quels tests ?
Quels tests ?        • Première étape       Comprendre les exigences métiers       Penser aux différents scenarios possibl...
Quels tests ?          • Le Test passe          Une fois que vous avez écrit tout le code et          que tous les tests p...
Quels tests ?       • Bug fix       Chaque résolution de bogue devrait commencer par       lécriture dun test unitaire qui...
TDD - DemoCalculatorLogicHelper
Workflow
Workflow
Workflow
Workflow
Workflow• Lister les exigences
Workflow• Lister les exigences• Créer la Classe
Workflow• Lister les exigences• Créer la Classe• Créer le TestCase à partir de la Classe : New Test  Case Class + Select cl...
Workflow• Lister les exigences• Créer la Classe• Créer le TestCase à partir de la Classe : New Test  Case Class + Select cl...
Workflow• Lister les exigences• Créer la Classe• Créer le TestCase à partir de la Classe : New Test  Case Class + Select cl...
Workflow• Lister les exigences• Créer la Classe• Créer le TestCase à partir de la Classe : New Test  Case Class + Select cl...
Workflow• Lister les exigences• Créer la Classe• Créer le TestCase à partir de la Classe : New Test  Case Class + Select cl...
Elad Elrom conseille :
Elad Elrom conseille :• De ne pas utiliser TDD pour les gestuelles.
Elad Elrom conseille :• De ne pas utiliser TDD pour les gestuelles.• Déviter généralement dutiliser TDD pour tester linter...
Elad Elrom conseille :• De ne pas utiliser TDD pour les gestuelles.• Déviter généralement dutiliser TDD pour tester linter...
Elad Elrom conseille :• De ne pas utiliser TDD pour les gestuelles.• Déviter généralement dutiliser TDD pour tester linter...
Elad Elrom conseille :• De ne pas utiliser TDD pour les gestuelles.• Déviter généralement dutiliser TDD pour tester linter...
Bibliography• http://www.slideshare.net/anupom98/introduction-to-tdd-with-flexunit• Unit Testing Tools in Flash Builder: h...
Ressources• http://www.slideshare.et/michael.labriola/why-test-with-flex-  unit• http://tutorials.digitalprimates.net/flex...
Bibliographie     Chapter 2 of AdvancedED Flex 4               Flash&Flex Developers Magazine            Flash and mobile ...
Flex Unit Testing
Flex Unit Testing
Flex Unit Testing
Flex Unit Testing
Prochain SlideShare
Chargement dans…5
×

Flex Unit Testing

793 vues

Publié le

Introduction aux tests unitaires et à 5DD données au Breizhcamp 2012

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
793
Sur SlideShare
0
Issues des intégrations
0
Intégrations
5
Actions
Partages
0
Téléchargements
15
Commentaires
0
J’aime
0
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • Flex Unit Testing

    1. 1. Flex / ActionScript Tests Unitaires et TDD 2012 - 06 - 14
    2. 2. Mathurin Body(@mathurin_body)Christophe Keromen (@ckeromen)
    3. 3. Mathurin Body (@mathurin_body) Christophe Keromen (@ckeromen)en continuelle amélioration
    4. 4. Le Test Unitaire consiste à prendre la plus petite partie du code, isolée de tout autre facteur et à vérifier quelle se comporte comme vous lattendez. Michael Labriola
    5. 5. Isolation• Le résultat du test ne doit pas être affecté par • dautres objets • létat global• Lors de léchec dun test unitaire, la source de lerreur doit être immédiatement identifiable.
    6. 6. Le Test dIntégration consiste à assembler des portions de code déjà testées unitairement et àvérifier que le comportement et linteraction entre ces composants est correct. Michael Labriola
    7. 7. Integration En règle générale, à partir du moment où lon utilise lun des termes suivants, nous sommes en train de discuter dune forme de test dintégration :• Asynchronous• Server• Lifecycle• DisplayList
    8. 8. Le Test Functionnel sattache à enregistrer et rejouer les interactions avec lapplication. Il est extrêmement important car il assure que lapplication respecte les spécifications. Il se peut que de nombreuses unités de codedoivent fonctionner avant de pouvoir produire un seul test dintégration. Michael Labriola
    9. 9. Flex Unit
    10. 10. Tests Unitaires et Flex / ActionScript 3FlexUnit est fourni avec Flash Builder 4.6, implémente xUnitFB 4.6 prend en charge les tests unitaires sur projets mobiles(WiFi requis)
    11. 11. Interface Utilisateur ?
    12. 12. Interface Utilisateur ?• Lorsque la Logique nest pas couplée avec la Vue, la Logique peut être mise sous Test Unitaire.
    13. 13. Interface Utilisateur ?• Lorsque la Logique nest pas couplée avec la Vue, la Logique peut être mise sous Test Unitaire.• Ex.: CalculatorAppFlex
    14. 14. Interface Utilisateur ?• Lorsque la Logique nest pas couplée avec la Vue, la Logique peut être mise sous Test Unitaire.• Ex.: CalculatorAppFlex o les déclarations MMXL declarations et les Event Handlers ne sont pas mis sous test unitaires
    15. 15. Interface Utilisateur ?• Lorsque la Logique nest pas couplée avec la Vue, la Logique peut être mise sous Test Unitaire.• Ex.: CalculatorAppFlex o les déclarations MMXL declarations et les Event Handlers ne sont pas mis sous test unitaires o CalculatorLogicHelper est couverte par les tests unitaires
    16. 16. Interface Utilisateur ?• Lorsque la Logique nest pas couplée avec la Vue, la Logique peut être mise sous Test Unitaire.• Ex.: CalculatorAppFlex o les déclarations MMXL declarations et les Event Handlers ne sont pas mis sous test unitaires o CalculatorLogicHelper est couverte par les tests unitaires
    17. 17. Interface Utilisateur ?Le test des composants UI est beaucoup plus complexe, ex.:FlexUnit4Examples/flexUnitTests.FlexUnit4CheckUITester
    18. 18. http://www.slideshare.net/anupom98/introduction-to-tdd-with-flexunit
    19. 19. http://www.slideshare.net/anupom98/introduction-to-tdd-with-flexunit
    20. 20. Flex UnitTesting Demo MobileCalc
    21. 21. Raccourcis Flash Builder:• Alt+Shift+A, FExécute tous les tests FlexUnit du projet.• Alt+Shift+E, FExécute les tests FlexUnit sélectionnés.• Tag [Ignore] - Permet dignorer le test marqué. Évite de commenter la méthode.
    22. 22. http://www.slideshare.net/anupom98/introduction-to-tdd-with-flexunit
    23. 23. TDDeXtreme Unit Testing
    24. 24. TDD eXtreme Unit TestingÉcrivez les tests en premier !
    25. 25. TDD eXtreme Unit TestingÉcrivez les tests en premier ! AVANT DE CODER
    26. 26. Combien ont déjà fait du TDD ?Combien ont essayé de faire du TDD etabandonné ?Combien ont toujours rêvé de se mettre au TDD,mais ne lont pas fait ?
    27. 27. http://www.slideshare.net/anupom98/introduction-to-tdd-with-flexunit
    28. 28. Quels tests ?
    29. 29. Quels tests ? • Première étape Comprendre les exigences métiers Penser aux différents scenarios possibles Ajouter des tests reposant sur ces scenarios
    30. 30. Quels tests ? • Le Test passe Une fois que vous avez écrit tout le code et que tous les tests passent, vous savez que vous remplissez toutes les exigences métiers. Vous pouvez partager le résultat avec le client ou les autres membres de léquipe.
    31. 31. Quels tests ? • Bug fix Chaque résolution de bogue devrait commencer par lécriture dun test unitaire qui le met en évidence.
    32. 32. TDD - DemoCalculatorLogicHelper
    33. 33. Workflow
    34. 34. Workflow
    35. 35. Workflow
    36. 36. Workflow
    37. 37. Workflow• Lister les exigences
    38. 38. Workflow• Lister les exigences• Créer la Classe
    39. 39. Workflow• Lister les exigences• Créer la Classe• Créer le TestCase à partir de la Classe : New Test Case Class + Select class to test
    40. 40. Workflow• Lister les exigences• Créer la Classe• Créer le TestCase à partir de la Classe : New Test Case Class + Select class to test• Run Test -> échec
    41. 41. Workflow• Lister les exigences• Créer la Classe• Créer le TestCase à partir de la Classe : New Test Case Class + Select class to test• Run Test -> échec• Écrire du code pour passer le test
    42. 42. Workflow• Lister les exigences• Créer la Classe• Créer le TestCase à partir de la Classe : New Test Case Class + Select class to test• Run Test -> échec• Écrire du code pour passer le test• Refactoring si nécessaire
    43. 43. Workflow• Lister les exigences• Créer la Classe• Créer le TestCase à partir de la Classe : New Test Case Class + Select class to test• Run Test -> échec• Écrire du code pour passer le test• Refactoring si nécessaire• Création dune TestSuite : New Test Suite Class + select Test classes
    44. 44. Elad Elrom conseille :
    45. 45. Elad Elrom conseille :• De ne pas utiliser TDD pour les gestuelles.
    46. 46. Elad Elrom conseille :• De ne pas utiliser TDD pour les gestuelles.• Déviter généralement dutiliser TDD pour tester linterface utilisateur.
    47. 47. Elad Elrom conseille :• De ne pas utiliser TDD pour les gestuelles.• Déviter généralement dutiliser TDD pour tester linterface utilisateur.• Dutiliser TDD pour construire les APIs, frameworks, utilitaires et helpers.
    48. 48. Elad Elrom conseille :• De ne pas utiliser TDD pour les gestuelles.• Déviter généralement dutiliser TDD pour tester linterface utilisateur.• Dutiliser TDD pour construire les APIs, frameworks, utilitaires et helpers.• Dutiliser TDD pour tester les services.
    49. 49. Elad Elrom conseille :• De ne pas utiliser TDD pour les gestuelles.• Déviter généralement dutiliser TDD pour tester linterface utilisateur.• Dutiliser TDD pour construire les APIs, frameworks, utilitaires et helpers.• Dutiliser TDD pour tester les services.• Dutiliser TDD pour le code qui sera utilisé plus dune fois, dans plus dune application,…
    50. 50. Bibliography• http://www.slideshare.net/anupom98/introduction-to-tdd-with-flexunit• Unit Testing Tools in Flash Builder: http://help.adobe.com/en_US/flashbuilder/ using/WS064a3073e805330f-57274fcd12dfe5a574a-8000.html• Doc FlexUnit: http://docs.flexunit.org/index.php• Elad Elrom o Test Driven Development using Flash Builder 4 and FlexUnit (2009) http:// www.adobe.com/devnet/flex/articles/flashbuilder4_tdd.html o http://www.slideshare.net/eladnyc/test-driven-development-tdd-with- flexunit-4-360flex-san-jose-preso o http://elromdesign.com/blog/2010/03/10/test-driven-development-tdd-with- flexunit-4-complete-tutorial/
    51. 51. Ressources• http://www.slideshare.et/michael.labriola/why-test-with-flex- unit• http://tutorials.digitalprimates.net/flexunit.html• Support for FlexUnit: https://flexunit.tenderapp.com/• A very good read http://www.amazon.com/Working- Effectively-Legacy-Michael- Feathers/dp/0131177052 • Elad Elrom Examples Downloadhttp://www.adobe.com/content/dotcom/en/devnet/flex/articles/flashbuilder4_tdd/_jcr_content/articlePrerequistes/multiplefiles/node_1278642616618/file.res/flashbuilder4_tdd_source[1].zip
    52. 52. Bibliographie Chapter 2 of AdvancedED Flex 4 Flash&Flex Developers Magazine Flash and mobile - APPS, IPHONE AND IPOD Touch 201-01

    ×