Upgrade to Pro — share decks privately, control downloads, hide ads and more …

L'intégration continue de A à Z sur une application PHP existante

908a0c79fc96a06684fa7e2a523bde1b?s=47 Marek Kalnik
November 30, 2012

L'intégration continue de A à Z sur une application PHP existante

Les slides de mon talk que j'ai donné à Nantes pour PHPTour 2012

908a0c79fc96a06684fa7e2a523bde1b?s=128

Marek Kalnik

November 30, 2012
Tweet

Transcript

  1. PHPTour Nantes 2012 www.afup.org L'intégration continue de A à Z

    sur une application PHP existante
  2. Technical Team Manager Theodo Evolution Developer RogerCmsBundle Maintainer Formateur en

    Bonnes Pratiques @marekkalnik Marek Kalnik http://tumblr.com/marekkalnik BLOG
  3. Un projet legacy...

  4. ...des développeurs, des project managers...

  5. ...et la peur de bugs et deadlines.

  6. Pour mieux dormir la nuit...

  7. ...faisons appel à l'intégration continue !

  8. Intégration continue Automatisation Tests Documentation Intégration Votre porte-boNheur

  9. Intégration Branche d'intégration Commits de développeurs

  10. Tests TESTS DE DÉVELOPPEMENT TESTS UNITAIRES TESTS D'INTEGRATION TESTS APRÈS-BUGS

    D'ACCEPTANCE TESTS TESTS DE DÉVELOPPEUR
  11. Automatisation Push Build Tests DeploiemeNt Photo : stadtstreicher79@flickr

  12. Documentation Qualité du code Installation Déploiement Développement Photo : ZeroOne

    / Foter
  13. Intégration du legacy

  14. Factoriser pour faire les tests ? Brett L. Schuchert Toughworks

    Risque d'introduction d'un bug en modifiant une seule ligne du code legacy
  15. LXC Jailer Les micro-frameworks Serveur BDD Les services web Slim

    Photo : Darwin Bell / Foter Réplication d’environnement Pentaho Kettle Silex
  16. Les tests non-intrusifs Linkchecker Mink + ZombieJS Mink + Selenium

    Smoke testing Dev testing Build testing On peut commencer la factorisation et les tests unitaires Photo : katerha / Foter
  17. Build Configuration Jenkins Déploiement Automatisation Jenkins-PHP Ant Fabric Jenkins-CLI Photo

    : GogDog / Foter
  18. Documentation Build Tests Déploiement HTMLPublisherPlugin + PlotPlugin RegistrationFormHandler [x] Does

    not bind on get [x] Saves and sends mail on request [x] Binds facebook data UserFormHandler [x] No bind on get [x] Returns false on invalid data [x] Get user and bind on valid data
  19. Frontend Andrew Morrell Photography / Foter

  20. JS Test Driver JSTD

  21. Linters JS Hint CSS Lint

  22. Installation Jenkins 1 journée Réplication de l'environnement < 1 mois

    Création de tests quelques mois Amélioration continue et projet plus stable pour la vie Estimation ?
  23. @marekkalnik Marek Kalnik http://tumblr.com/marekkalnik BLOG L'intégration continue de A à

    Z sur une application PHP existante Questions ? http://joind.in/7259 Joind.in