SlideShare une entreprise Scribd logo
1  sur  11
Télécharger pour lire hors ligne
Exposé sur :Selenium
Prépare par :
Daoudi ilhem
Université Mohamed Chérif Messadia
‫ــ‬ Souk-Ahras ‫ــ‬
Plan :
1-introduction.
2-Définition.
3-Les composants de selenium.
4- tests de charge avec selenium.
5-selenium GRID, exécuter en parallèle.
6-Conclution.
1-Références.
1-introduction :
• Généralement, une fois le développement de l’application terminée, elle est
mise en production.
• Seulement, le succès peut arriver rapidement et il convient donc de
vérifier au minimum si l’application est viable avec un grand nombre
d’utilisateurs.
Pour vérifier cela, il suffit de lancer des tests de charge (stress tests en
anglais) sur son application.
• Dans cet exposé, On vous propose de découvrir un outil que vous pouvez
utiliser gratuitement pour effectuer ces tests.
2-Définition :
• Selenium est une suite d’outils
permettant de faire des tests
fonctionnels d’une application
web (et uniquement web).
3-Les composants de selenium :
• Selenium core : cœur de selenium. Le core doit être installé sur le serveur sur lequel
tourne votre application pour pouvoir les tester.
• Selenium IDE : extension firefox capable d’enregistrer et d’exécuter des tests et des test
suites.
• Selenium remote control : serveur qui permet d’exécuter des tests sur différents
navigateurs (firefox, internet explorer, opera, etc) et différents systèmes d’exploitation
(MS windows, GNU/linux, mac OS).
• Serveur qui permet d’exécuter des tests écrit dans des langages de script comme ruby,
python, java, .Net et perl.
• Télécharger ses composants sur : http://docs.seleniumhq.org/download/
4- tests de charge avec selenium :
• A l’origine, selenium est une framework de tests fonctionnels pour vos
applications web. Néanmoins, on propose aussi de l’utiliser comme outil
de tests de charge.
• En effet, selenium permet d’enregistrer des séquences de navigation
depuis votre browser (firefox). Ces séquences peuvent ensuite être
scriptes, variabilisées puis rejouées plusieurs fois depuis plusieurs
machines en parallèle.
• Afin d'exécuter des tests sur plusieurs machines différentes du serveur
selenium, celui-ci dispose du mode GRID.
5-selenium GRID, exécuter en parallèle :
• Le principe est d'avoir un serveur "hub" qui écoute et enregistre des serveurs "node"
qui exécuteront les tests. Chaque node enregistré par le hub l'informe de ses
capacités (navigateur, version, plateforme).
• Le serveur hub reçoit toutes les commandes du client.
• En fonction de la demande du client (capacités, session), le serveur hub va distribuer
les commandes vers le serveur node adéquat.
• Concrètement, lancez d'abord votre serveur hub :
• java -jar selenium-server-standalone-2.43.1.jar -role hub
• Le serveur hub est en écoute sur un port pour des demandes de serveurs node.
5-selenium GRID, exécuter en parallèle (suite):
• Puis lancez des serveurs nodes. Vous pouvez spécifier quels sont les capacités
supportées via l'option "-nodeconfig" avec un fichier de config en JSON ou en
utilisant l'option "-browser" (dépréciée):
• java -jar selenium-server-standalone-2.43.1.jar -role node -hub
http://IP_HUB:PORT_HUB/grid/register -browser
browserName=firefox,platform=LINUX -browser "browserName=internet
explorer,version=9"
6-Conclution :
• On peut créer ses propres scénarios très facilement sans avoir à
apprendre les commandes de l’application.
• Selenium peut simuler via selenium remote control (rc) différents
navigateurs, plateformes et même langage.
• Selenium grid va permettre de mettre en place une architecture
distribuées pour réaliser des tests en parallèle.
1-Références :
• http://www.dotnetdojo.com/10-outils-de-tests-de-charge-pour-votre-application-web/
• http://blog.clever-age.com/fr/2007/11/26/selenium-testez-fonctionnellement-vos-
applications-web-partie-1-2/
• http://blog.admin-linux.org/administration/test-de-montee-en-charge-benchmark-avec-
des-logiciels-libres
• http://www.seleniumhq.org/docs/07_selenium_grid.jsp
• http://makina-corpus.com/blog/metier/2014/webdriver-executer-vos-tests-sur-des-
navigateurs-distants-en-parallele

Contenu connexe

Tendances

[PFE] Master en ingénierie du logiciel
[PFE] Master en ingénierie du logiciel[PFE] Master en ingénierie du logiciel
[PFE] Master en ingénierie du logicielUSTHB & DELTALOG
 
Cours Génie Logiciel - Cours 2 - Cycles de vie
Cours Génie Logiciel - Cours 2 - Cycles de vieCours Génie Logiciel - Cours 2 - Cycles de vie
Cours Génie Logiciel - Cours 2 - Cycles de vieMohammed Amine Mostefai
 
Selenium WebDriver avec Java
Selenium WebDriver avec Java Selenium WebDriver avec Java
Selenium WebDriver avec Java Ahmed HARRAK
 
Workshop spring session 2 - La persistance au sein des applications Java
Workshop spring   session 2 - La persistance au sein des applications JavaWorkshop spring   session 2 - La persistance au sein des applications Java
Workshop spring session 2 - La persistance au sein des applications JavaAntoine Rey
 
Méthodes agiles vs méthodes classiques
Méthodes agiles vs méthodes classiquesMéthodes agiles vs méthodes classiques
Méthodes agiles vs méthodes classiquesSirine Barguaoui
 
Chp5 - Sécurité des Services
Chp5 - Sécurité des ServicesChp5 - Sécurité des Services
Chp5 - Sécurité des ServicesLilia Sfaxi
 
diagramme des cas d'utilisation
diagramme des cas d'utilisationdiagramme des cas d'utilisation
diagramme des cas d'utilisationAmir Souissi
 
Formation Gratuite Total Tests par les experts Java Ippon
Formation Gratuite Total Tests par les experts Java Ippon Formation Gratuite Total Tests par les experts Java Ippon
Formation Gratuite Total Tests par les experts Java Ippon Ippon
 
Appalications JEE avec Servlet/JSP
Appalications JEE avec Servlet/JSPAppalications JEE avec Servlet/JSP
Appalications JEE avec Servlet/JSPYouness Boukouchi
 
Ch4fr Modélisation du système
Ch4fr Modélisation du systèmeCh4fr Modélisation du système
Ch4fr Modélisation du systèmeMahmoud Haydar
 
Chp3 - Architecture Logicielle des Applications Mobiles
Chp3 - Architecture Logicielle des Applications MobilesChp3 - Architecture Logicielle des Applications Mobiles
Chp3 - Architecture Logicielle des Applications MobilesLilia Sfaxi
 
Chp4 - Diagramme de Séquence
Chp4 - Diagramme de SéquenceChp4 - Diagramme de Séquence
Chp4 - Diagramme de SéquenceLilia Sfaxi
 

Tendances (20)

[PFE] Master en ingénierie du logiciel
[PFE] Master en ingénierie du logiciel[PFE] Master en ingénierie du logiciel
[PFE] Master en ingénierie du logiciel
 
Cours Génie Logiciel - Cours 2 - Cycles de vie
Cours Génie Logiciel - Cours 2 - Cycles de vieCours Génie Logiciel - Cours 2 - Cycles de vie
Cours Génie Logiciel - Cours 2 - Cycles de vie
 
Selenium WebDriver avec Java
Selenium WebDriver avec Java Selenium WebDriver avec Java
Selenium WebDriver avec Java
 
Workshop spring session 2 - La persistance au sein des applications Java
Workshop spring   session 2 - La persistance au sein des applications JavaWorkshop spring   session 2 - La persistance au sein des applications Java
Workshop spring session 2 - La persistance au sein des applications Java
 
Méthodes agiles vs méthodes classiques
Méthodes agiles vs méthodes classiquesMéthodes agiles vs méthodes classiques
Méthodes agiles vs méthodes classiques
 
Test logiciel
Test logicielTest logiciel
Test logiciel
 
Chp5 - Sécurité des Services
Chp5 - Sécurité des ServicesChp5 - Sécurité des Services
Chp5 - Sécurité des Services
 
Spring mvc
Spring mvcSpring mvc
Spring mvc
 
diagramme des cas d'utilisation
diagramme des cas d'utilisationdiagramme des cas d'utilisation
diagramme des cas d'utilisation
 
Génie Logiciel : les tests
Génie Logiciel : les testsGénie Logiciel : les tests
Génie Logiciel : les tests
 
Tests Logiciel
Tests LogicielTests Logiciel
Tests Logiciel
 
Formation Gratuite Total Tests par les experts Java Ippon
Formation Gratuite Total Tests par les experts Java Ippon Formation Gratuite Total Tests par les experts Java Ippon
Formation Gratuite Total Tests par les experts Java Ippon
 
Support cours angular
Support cours angularSupport cours angular
Support cours angular
 
Spring ioc
Spring iocSpring ioc
Spring ioc
 
Appalications JEE avec Servlet/JSP
Appalications JEE avec Servlet/JSPAppalications JEE avec Servlet/JSP
Appalications JEE avec Servlet/JSP
 
Ch4fr Modélisation du système
Ch4fr Modélisation du systèmeCh4fr Modélisation du système
Ch4fr Modélisation du système
 
Chp3 - Architecture Logicielle des Applications Mobiles
Chp3 - Architecture Logicielle des Applications MobilesChp3 - Architecture Logicielle des Applications Mobiles
Chp3 - Architecture Logicielle des Applications Mobiles
 
Gestion de projet agile avec Scrum
Gestion de projet agile avec ScrumGestion de projet agile avec Scrum
Gestion de projet agile avec Scrum
 
Chp4 - Diagramme de Séquence
Chp4 - Diagramme de SéquenceChp4 - Diagramme de Séquence
Chp4 - Diagramme de Séquence
 
Support de cours angular
Support de cours angularSupport de cours angular
Support de cours angular
 

En vedette

En vedette (20)

P resentacion generalidades unidad 3
P resentacion generalidades unidad 3P resentacion generalidades unidad 3
P resentacion generalidades unidad 3
 
óLeo
óLeoóLeo
óLeo
 
Dia de san valentin
Dia de san valentinDia de san valentin
Dia de san valentin
 
computacion
computacioncomputacion
computacion
 
Après l'e-book
Après l'e-bookAprès l'e-book
Après l'e-book
 
derecho al agua potable
derecho al agua potablederecho al agua potable
derecho al agua potable
 
Brechas digitales
Brechas digitalesBrechas digitales
Brechas digitales
 
7.3 Ou Est Le Parc
7.3 Ou Est Le Parc7.3 Ou Est Le Parc
7.3 Ou Est Le Parc
 
Voeux 2017 de Madame le Maire Christiane Guicherd
Voeux 2017 de Madame le Maire Christiane GuicherdVoeux 2017 de Madame le Maire Christiane Guicherd
Voeux 2017 de Madame le Maire Christiane Guicherd
 
DOSSIER PRESSE
DOSSIER PRESSEDOSSIER PRESSE
DOSSIER PRESSE
 
P resentacion generalidades unidad 3
P resentacion generalidades unidad 3P resentacion generalidades unidad 3
P resentacion generalidades unidad 3
 
Mr Chilled
Mr ChilledMr Chilled
Mr Chilled
 
Concours JobMeeters : Regles du jeu
Concours JobMeeters : Regles du jeuConcours JobMeeters : Regles du jeu
Concours JobMeeters : Regles du jeu
 
Futurologie & Veille technologique - CAD, 2009 2010
Futurologie & Veille technologique - CAD, 2009 2010Futurologie & Veille technologique - CAD, 2009 2010
Futurologie & Veille technologique - CAD, 2009 2010
 
INTEP J2S2
INTEP J2S2INTEP J2S2
INTEP J2S2
 
[Odimat] ~ Presentation Du Referencement Sponsorise
[Odimat] ~ Presentation Du Referencement Sponsorise[Odimat] ~ Presentation Du Referencement Sponsorise
[Odimat] ~ Presentation Du Referencement Sponsorise
 
Polska I Polacy Zdjecia
Polska I Polacy  ZdjeciaPolska I Polacy  Zdjecia
Polska I Polacy Zdjecia
 
Ton Visage
Ton VisageTon Visage
Ton Visage
 
Conditions Cadre Mshis3109
Conditions Cadre Mshis3109Conditions Cadre Mshis3109
Conditions Cadre Mshis3109
 
Evaluaci%f3n de tce
Evaluaci%f3n de tceEvaluaci%f3n de tce
Evaluaci%f3n de tce
 

Similaire à Selenium

20080923 04 - Selenium web application testing system
20080923 04 - Selenium web application testing system20080923 04 - Selenium web application testing system
20080923 04 - Selenium web application testing systemLeClubQualiteLogicielle
 
Soirée du Test Logiciel - Mise en place d’une plateforme de test automatisé a...
Soirée du Test Logiciel - Mise en place d’une plateforme de test automatisé a...Soirée du Test Logiciel - Mise en place d’une plateforme de test automatisé a...
Soirée du Test Logiciel - Mise en place d’une plateforme de test automatisé a...TelecomValley
 
Play Framework
Play FrameworkPlay Framework
Play FrameworkArmaklan
 
JFTL-2018-Comment-mettre-en-place-des-plateformes-de-test-grâce-à-Docker.pdf
JFTL-2018-Comment-mettre-en-place-des-plateformes-de-test-grâce-à-Docker.pdfJFTL-2018-Comment-mettre-en-place-des-plateformes-de-test-grâce-à-Docker.pdf
JFTL-2018-Comment-mettre-en-place-des-plateformes-de-test-grâce-à-Docker.pdfqsdqsd4
 
Installation et configuration d'openbravo
Installation et configuration d'openbravoInstallation et configuration d'openbravo
Installation et configuration d'openbravoSoumia Brabije
 
Performance ug#1
Performance ug#1Performance ug#1
Performance ug#1Marc Bojoly
 
JCertif 2012 : Maven par la pratique
JCertif 2012 : Maven par la pratiqueJCertif 2012 : Maven par la pratique
JCertif 2012 : Maven par la pratiqueRossi Oddet
 
Alphorm.com Formation Java, les fondamentaux
Alphorm.com Formation Java, les fondamentaux Alphorm.com Formation Java, les fondamentaux
Alphorm.com Formation Java, les fondamentaux Alphorm
 
Symfony2: 30 astuces et bonnes pratiques
Symfony2: 30 astuces et bonnes pratiquesSymfony2: 30 astuces et bonnes pratiques
Symfony2: 30 astuces et bonnes pratiquesNoel GUILBERT
 
Scub Foundation, usine logicielle Java libre
Scub Foundation, usine logicielle Java libreScub Foundation, usine logicielle Java libre
Scub Foundation, usine logicielle Java libreStéphane Traumat
 
Environnement java
Environnement javaEnvironnement java
Environnement javaInes Ouaz
 
Javascript as a first programming language : votre IC prête pour la révolution !
Javascript as a first programming language : votre IC prête pour la révolution !Javascript as a first programming language : votre IC prête pour la révolution !
Javascript as a first programming language : votre IC prête pour la révolution !VISEO
 
Livraison en continue avec l'outillage devops - Jenkins, Ansible, Docker et ...
Livraison en continue avec l'outillage devops - Jenkins, Ansible, Docker et  ...Livraison en continue avec l'outillage devops - Jenkins, Ansible, Docker et  ...
Livraison en continue avec l'outillage devops - Jenkins, Ansible, Docker et ...Jasmine Conseil
 
JFTL-2018-Comment-mettre-en-place-des-plateformes-de-test-gr__ce-__-Docker.pptx
JFTL-2018-Comment-mettre-en-place-des-plateformes-de-test-gr__ce-__-Docker.pptxJFTL-2018-Comment-mettre-en-place-des-plateformes-de-test-gr__ce-__-Docker.pptx
JFTL-2018-Comment-mettre-en-place-des-plateformes-de-test-gr__ce-__-Docker.pptxAnisSalhi3
 
Presentation test de_charge_jmeter
Presentation test de_charge_jmeterPresentation test de_charge_jmeter
Presentation test de_charge_jmetersyloemontpellier
 
Codedarmor 2012 - 03/04 - Android, What else?
Codedarmor 2012 - 03/04 - Android, What else?Codedarmor 2012 - 03/04 - Android, What else?
Codedarmor 2012 - 03/04 - Android, What else?codedarmor
 

Similaire à Selenium (20)

20080923 04 - Selenium web application testing system
20080923 04 - Selenium web application testing system20080923 04 - Selenium web application testing system
20080923 04 - Selenium web application testing system
 
Soirée du Test Logiciel - Mise en place d’une plateforme de test automatisé a...
Soirée du Test Logiciel - Mise en place d’une plateforme de test automatisé a...Soirée du Test Logiciel - Mise en place d’une plateforme de test automatisé a...
Soirée du Test Logiciel - Mise en place d’une plateforme de test automatisé a...
 
Play Framework
Play FrameworkPlay Framework
Play Framework
 
JFTL-2018-Comment-mettre-en-place-des-plateformes-de-test-grâce-à-Docker.pdf
JFTL-2018-Comment-mettre-en-place-des-plateformes-de-test-grâce-à-Docker.pdfJFTL-2018-Comment-mettre-en-place-des-plateformes-de-test-grâce-à-Docker.pdf
JFTL-2018-Comment-mettre-en-place-des-plateformes-de-test-grâce-à-Docker.pdf
 
Installation et configuration d'openbravo
Installation et configuration d'openbravoInstallation et configuration d'openbravo
Installation et configuration d'openbravo
 
Performance ug#1
Performance ug#1Performance ug#1
Performance ug#1
 
Support NodeJS avec TypeScript Express MongoDB
Support NodeJS avec TypeScript Express MongoDBSupport NodeJS avec TypeScript Express MongoDB
Support NodeJS avec TypeScript Express MongoDB
 
JCertif 2012 : Maven par la pratique
JCertif 2012 : Maven par la pratiqueJCertif 2012 : Maven par la pratique
JCertif 2012 : Maven par la pratique
 
Alphorm.com Formation Java, les fondamentaux
Alphorm.com Formation Java, les fondamentaux Alphorm.com Formation Java, les fondamentaux
Alphorm.com Formation Java, les fondamentaux
 
Symfony2: 30 astuces et bonnes pratiques
Symfony2: 30 astuces et bonnes pratiquesSymfony2: 30 astuces et bonnes pratiques
Symfony2: 30 astuces et bonnes pratiques
 
Scub Foundation, usine logicielle Java libre
Scub Foundation, usine logicielle Java libreScub Foundation, usine logicielle Java libre
Scub Foundation, usine logicielle Java libre
 
1-android.pdf
1-android.pdf1-android.pdf
1-android.pdf
 
Environnement java
Environnement javaEnvironnement java
Environnement java
 
Javascript as a first programming language : votre IC prête pour la révolution !
Javascript as a first programming language : votre IC prête pour la révolution !Javascript as a first programming language : votre IC prête pour la révolution !
Javascript as a first programming language : votre IC prête pour la révolution !
 
Livraison en continue avec l'outillage devops - Jenkins, Ansible, Docker et ...
Livraison en continue avec l'outillage devops - Jenkins, Ansible, Docker et  ...Livraison en continue avec l'outillage devops - Jenkins, Ansible, Docker et  ...
Livraison en continue avec l'outillage devops - Jenkins, Ansible, Docker et ...
 
JFTL-2018-Comment-mettre-en-place-des-plateformes-de-test-gr__ce-__-Docker.pptx
JFTL-2018-Comment-mettre-en-place-des-plateformes-de-test-gr__ce-__-Docker.pptxJFTL-2018-Comment-mettre-en-place-des-plateformes-de-test-gr__ce-__-Docker.pptx
JFTL-2018-Comment-mettre-en-place-des-plateformes-de-test-gr__ce-__-Docker.pptx
 
Presentation test de_charge_jmeter
Presentation test de_charge_jmeterPresentation test de_charge_jmeter
Presentation test de_charge_jmeter
 
Codedarmor 2012 - 03/04 - Android, What else?
Codedarmor 2012 - 03/04 - Android, What else?Codedarmor 2012 - 03/04 - Android, What else?
Codedarmor 2012 - 03/04 - Android, What else?
 
tp-spring.pdf
tp-spring.pdftp-spring.pdf
tp-spring.pdf
 
tp-spring.pdf
tp-spring.pdftp-spring.pdf
tp-spring.pdf
 

Selenium

  • 1. Exposé sur :Selenium Prépare par : Daoudi ilhem Université Mohamed Chérif Messadia ‫ــ‬ Souk-Ahras ‫ــ‬
  • 2. Plan : 1-introduction. 2-Définition. 3-Les composants de selenium. 4- tests de charge avec selenium. 5-selenium GRID, exécuter en parallèle. 6-Conclution. 1-Références.
  • 3. 1-introduction : • Généralement, une fois le développement de l’application terminée, elle est mise en production. • Seulement, le succès peut arriver rapidement et il convient donc de vérifier au minimum si l’application est viable avec un grand nombre d’utilisateurs. Pour vérifier cela, il suffit de lancer des tests de charge (stress tests en anglais) sur son application. • Dans cet exposé, On vous propose de découvrir un outil que vous pouvez utiliser gratuitement pour effectuer ces tests.
  • 4. 2-Définition : • Selenium est une suite d’outils permettant de faire des tests fonctionnels d’une application web (et uniquement web).
  • 5. 3-Les composants de selenium : • Selenium core : cœur de selenium. Le core doit être installé sur le serveur sur lequel tourne votre application pour pouvoir les tester. • Selenium IDE : extension firefox capable d’enregistrer et d’exécuter des tests et des test suites. • Selenium remote control : serveur qui permet d’exécuter des tests sur différents navigateurs (firefox, internet explorer, opera, etc) et différents systèmes d’exploitation (MS windows, GNU/linux, mac OS). • Serveur qui permet d’exécuter des tests écrit dans des langages de script comme ruby, python, java, .Net et perl. • Télécharger ses composants sur : http://docs.seleniumhq.org/download/
  • 6.
  • 7. 4- tests de charge avec selenium : • A l’origine, selenium est une framework de tests fonctionnels pour vos applications web. Néanmoins, on propose aussi de l’utiliser comme outil de tests de charge. • En effet, selenium permet d’enregistrer des séquences de navigation depuis votre browser (firefox). Ces séquences peuvent ensuite être scriptes, variabilisées puis rejouées plusieurs fois depuis plusieurs machines en parallèle. • Afin d'exécuter des tests sur plusieurs machines différentes du serveur selenium, celui-ci dispose du mode GRID.
  • 8. 5-selenium GRID, exécuter en parallèle : • Le principe est d'avoir un serveur "hub" qui écoute et enregistre des serveurs "node" qui exécuteront les tests. Chaque node enregistré par le hub l'informe de ses capacités (navigateur, version, plateforme). • Le serveur hub reçoit toutes les commandes du client. • En fonction de la demande du client (capacités, session), le serveur hub va distribuer les commandes vers le serveur node adéquat. • Concrètement, lancez d'abord votre serveur hub : • java -jar selenium-server-standalone-2.43.1.jar -role hub • Le serveur hub est en écoute sur un port pour des demandes de serveurs node.
  • 9. 5-selenium GRID, exécuter en parallèle (suite): • Puis lancez des serveurs nodes. Vous pouvez spécifier quels sont les capacités supportées via l'option "-nodeconfig" avec un fichier de config en JSON ou en utilisant l'option "-browser" (dépréciée): • java -jar selenium-server-standalone-2.43.1.jar -role node -hub http://IP_HUB:PORT_HUB/grid/register -browser browserName=firefox,platform=LINUX -browser "browserName=internet explorer,version=9"
  • 10. 6-Conclution : • On peut créer ses propres scénarios très facilement sans avoir à apprendre les commandes de l’application. • Selenium peut simuler via selenium remote control (rc) différents navigateurs, plateformes et même langage. • Selenium grid va permettre de mettre en place une architecture distribuées pour réaliser des tests en parallèle.
  • 11. 1-Références : • http://www.dotnetdojo.com/10-outils-de-tests-de-charge-pour-votre-application-web/ • http://blog.clever-age.com/fr/2007/11/26/selenium-testez-fonctionnellement-vos- applications-web-partie-1-2/ • http://blog.admin-linux.org/administration/test-de-montee-en-charge-benchmark-avec- des-logiciels-libres • http://www.seleniumhq.org/docs/07_selenium_grid.jsp • http://makina-corpus.com/blog/metier/2014/webdriver-executer-vos-tests-sur-des- navigateurs-distants-en-parallele