Extreme programming : Selenium & Jenkins deux outils bien pratiques !!
3 participants
Page 1 sur 1
Extreme programming : Selenium & Jenkins deux outils bien pratiques !!
Hey les fou du pc,
Aujourd'hui nous allons parler d'extrême programming et d'intégration continue.
L'intégration continue est peu répandue dans les entreprises de programmation française et c'est un tord !!
D'abord, pour ceux qui ne savent pas en quoi consiste l'intégration continue :
"L'intégration continue est un ensemble de pratiques utilisées en génie logiciel consistant à vérifier à chaque modification de code source que le résultat des modifications ne produit pas de régression dans l'application développée. Bien que le concept existât auparavant[réf. nécessaire], l'intégration continue se réfère généralement à la pratique de l'extreme programming." Wikipédia
Il est donc temps messieurs, dames, de mettre une énorme corde à l'arc de votre CV. Que dis-je une corde, un véritable lingot d'or. Il est temps d'apprendre l'intégration continue ( en sachant que même pour un petit développeurs, qui ne fait que des petits sites web c'est super pratique )
Il ne sera pas ici question d'un tutoriel mais plutôt d'une présentation des outils utilisables.
SELENIUM
Selenium est un outil de test, il se décompose en trois morceaux, Selenium IDE ( un petit plugin uniquement firefox pour l'enregistrement de test ) selenium RC ( le coeur de selenium, c'est le serveur ) Selenium Grid ( le plus intéressant ).
Un outil de test ? KEZAKO?
En gros, il peu s'avérer très utile de se demander en programmant une appli web sur windows 7, firefox 22 : " mais si l'utilisateur utilise windows XP et IE 7, est-ce que ca marche ?". C'est simple, il faut créer un "test" ( en gros un test c'est : tu ouvres telle page à telle adresse, tu click sur tel bouton, tu vérifies la présence du text, tu remplis les formulaires et hop tu valide ), en php ou java, ou ruby, ou html. Tu lances ton selenium grid, tu paramètre ton test pour simuler windows xp et IE7 ( il faut une machine virtuelle ) et HOP c'est partie, ton test s'exécute tout seul. Et si ca foire, tu en seras averti ! A savoir, que grid permet de run les tests en parallèle, donc on fait 10 tests sur navigateurs différents et plateformes différentes et c'est nickel ! On saura sans faire manuellement tous les tests, si notre appli est utilisable pour tous.
Quelques tutoriels pour apprendre Selenium :
http://fr.clever-age.com/veille/blog/selenium-testez-fonctionnellement-vos-applications-web-partie-2-2.html
http://talent.paperblog.fr/2938143/tutoriel-selenium/
Sans oublier la documentation officiel !
http://docs.seleniumhq.org/docs/
Cependant, le must du must ca reste de faire un truc du genre, on a un dépôt dans un gestionnaire de version, on commit la nouvelle version, et SBAM toute une batterie de test s'exécute pour tester la nouvelle version automatiquement, ca produit des rapports et rejette le code en cas de bugs de régression, pour ca , il y a JENKINS
Jenkins, l'intégration continu pour les nuls ( oupah )
Jenkins ( anciennement hudson) agit de manière simple. Il est entièrement paramétrable, le type de dépôt à scruter, le temps avant de scruter, les heures de scrutation, le déclenchement des tests etc etc... Et surtout, il contient une CHIER PLUS QUINZE de plugins super utiles qui permettent d'avoir des graphes, d'envoyer des mails en cas d'erreurs etc etc...
En gros dans notre cas d'appli web, Jenkins va scruter le dépôt SVN toutes les minutes, si il y a un dépôt il effectue une batterie de tests tous programmables via un petit fichier de build.xml ( on vas définir toutes les targets à effectuer dedans, genre : <target name="clean" >
</target>
<target name="test1">
<phpunit file="test1.php"></phpunit>
</target>)
Et pouf, de manière automatique, jenkins vas nous dire si nos tests ( selenium rappelons le !! ou autre hein, il peu y avoir du phpunit, du Junit etc etc ) sont passés ou, si il y a eut des erreurs.
Quelques liens pour jenkins :
http://www.scub-foundation.org/accueil/documentation/tutorial-gestion-de-l-integration-continue-avec-jenkins/
http://www.vogella.com/articles/Jenkins/article.html
La doc :
http://jenkins-ci.org/
Et un TRES TRES TRES BON TUTO pour intégrer nos tests phpunit/selenium à jenkins :
blog.pascal-martin.fr/post/integration-continue.jenkins-projet-php
Conclusion :
De nos jours, peu de programmeurs s'y connaissent en intégration continu, et encore moins sont capable de mettre en place une solution d'intégration continu. Pouvoir marquer cela dans sont CV ( en sachant que c'est l'avenir de la programmation), c'est tout simplement un énorme plus, croyez moi, même les élèves sortant d'écoles d'ingénieurs ne font pas encore bien ca.
A plus les loulous !
Aujourd'hui nous allons parler d'extrême programming et d'intégration continue.
L'intégration continue est peu répandue dans les entreprises de programmation française et c'est un tord !!
D'abord, pour ceux qui ne savent pas en quoi consiste l'intégration continue :
"L'intégration continue est un ensemble de pratiques utilisées en génie logiciel consistant à vérifier à chaque modification de code source que le résultat des modifications ne produit pas de régression dans l'application développée. Bien que le concept existât auparavant[réf. nécessaire], l'intégration continue se réfère généralement à la pratique de l'extreme programming." Wikipédia
Il est donc temps messieurs, dames, de mettre une énorme corde à l'arc de votre CV. Que dis-je une corde, un véritable lingot d'or. Il est temps d'apprendre l'intégration continue ( en sachant que même pour un petit développeurs, qui ne fait que des petits sites web c'est super pratique )
Il ne sera pas ici question d'un tutoriel mais plutôt d'une présentation des outils utilisables.
SELENIUM
Selenium est un outil de test, il se décompose en trois morceaux, Selenium IDE ( un petit plugin uniquement firefox pour l'enregistrement de test ) selenium RC ( le coeur de selenium, c'est le serveur ) Selenium Grid ( le plus intéressant ).
Un outil de test ? KEZAKO?
En gros, il peu s'avérer très utile de se demander en programmant une appli web sur windows 7, firefox 22 : " mais si l'utilisateur utilise windows XP et IE 7, est-ce que ca marche ?". C'est simple, il faut créer un "test" ( en gros un test c'est : tu ouvres telle page à telle adresse, tu click sur tel bouton, tu vérifies la présence du text, tu remplis les formulaires et hop tu valide ), en php ou java, ou ruby, ou html. Tu lances ton selenium grid, tu paramètre ton test pour simuler windows xp et IE7 ( il faut une machine virtuelle ) et HOP c'est partie, ton test s'exécute tout seul. Et si ca foire, tu en seras averti ! A savoir, que grid permet de run les tests en parallèle, donc on fait 10 tests sur navigateurs différents et plateformes différentes et c'est nickel ! On saura sans faire manuellement tous les tests, si notre appli est utilisable pour tous.
Quelques tutoriels pour apprendre Selenium :
http://fr.clever-age.com/veille/blog/selenium-testez-fonctionnellement-vos-applications-web-partie-2-2.html
http://talent.paperblog.fr/2938143/tutoriel-selenium/
Sans oublier la documentation officiel !
http://docs.seleniumhq.org/docs/
Cependant, le must du must ca reste de faire un truc du genre, on a un dépôt dans un gestionnaire de version, on commit la nouvelle version, et SBAM toute une batterie de test s'exécute pour tester la nouvelle version automatiquement, ca produit des rapports et rejette le code en cas de bugs de régression, pour ca , il y a JENKINS
Jenkins, l'intégration continu pour les nuls ( oupah )
Jenkins ( anciennement hudson) agit de manière simple. Il est entièrement paramétrable, le type de dépôt à scruter, le temps avant de scruter, les heures de scrutation, le déclenchement des tests etc etc... Et surtout, il contient une CHIER PLUS QUINZE de plugins super utiles qui permettent d'avoir des graphes, d'envoyer des mails en cas d'erreurs etc etc...
En gros dans notre cas d'appli web, Jenkins va scruter le dépôt SVN toutes les minutes, si il y a un dépôt il effectue une batterie de tests tous programmables via un petit fichier de build.xml ( on vas définir toutes les targets à effectuer dedans, genre : <target name="clean" >
</target>
<target name="test1">
<phpunit file="test1.php"></phpunit>
</target>)
Et pouf, de manière automatique, jenkins vas nous dire si nos tests ( selenium rappelons le !! ou autre hein, il peu y avoir du phpunit, du Junit etc etc ) sont passés ou, si il y a eut des erreurs.
Quelques liens pour jenkins :
http://www.scub-foundation.org/accueil/documentation/tutorial-gestion-de-l-integration-continue-avec-jenkins/
http://www.vogella.com/articles/Jenkins/article.html
La doc :
http://jenkins-ci.org/
Et un TRES TRES TRES BON TUTO pour intégrer nos tests phpunit/selenium à jenkins :
blog.pascal-martin.fr/post/integration-continue.jenkins-projet-php
Conclusion :
De nos jours, peu de programmeurs s'y connaissent en intégration continu, et encore moins sont capable de mettre en place une solution d'intégration continu. Pouvoir marquer cela dans sont CV ( en sachant que c'est l'avenir de la programmation), c'est tout simplement un énorme plus, croyez moi, même les élèves sortant d'écoles d'ingénieurs ne font pas encore bien ca.
A plus les loulous !
SuperMomo- lecteur novice
- Messages : 49
Date d'inscription : 21/06/2013
Re: Extreme programming : Selenium & Jenkins deux outils bien pratiques !!
J'aimerai apprendre à coder (pour mon blog), t'aurais des sites à me conseiller ?
Re: Extreme programming : Selenium & Jenkins deux outils bien pratiques !!
En plus d'un lexique, il faudra surement ajouter une partie tuto
TheLordAnubis- lecteur novice
- Messages : 40
Date d'inscription : 13/07/2013
Re: Extreme programming : Selenium & Jenkins deux outils bien pratiques !!
C'est dans ma liste de choses à faire
Page 1 sur 1
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum
Ven 17 Jan 2014 - 15:37 par croccervelle
» Electrobeach 2014 ça interresse quelqu'un ?
Jeu 26 Déc 2013 - 21:52 par croccervelle
» le desert bus de l'espoir
Dim 24 Nov 2013 - 16:05 par TheLordAnubis
» [PC-HARDWARE] Battlefield 4, what do you need to play ?
Sam 2 Nov 2013 - 20:13 par SuperMomo
» attention aux ARNAQUES !!
Dim 13 Oct 2013 - 10:08 par IamBigMax
» Skylanders - Whisper Elf & Punch PopFizz
Jeu 10 Oct 2013 - 17:12 par IamBigMax
» [PS3] Puppeteer
Mar 8 Oct 2013 - 19:17 par TheLordAnubis
» Tokyo Game Show 2013
Mar 8 Oct 2013 - 18:27 par TheLordAnubis
» Services de Création Web
Mar 8 Oct 2013 - 17:32 par TheLordAnubis
» [PC] Crysis 3
Lun 7 Oct 2013 - 14:23 par JCsHunter