Formation Selenium

Automatiser les tests de vos applications web

sablier-violet  Durée : 2 jours

Référence : SEL 01

Réservez votre session

PARIS

1er Juin 2017

1250 € HT











Objectifs

Découvrir les tests d’une application Web
Prendre en main l’API WebDriver
Mettre en place des scénarios de tests dans leur intégralité

Public

Développeur/Testeur d’application Web

Pré-requis

Connaissances de Java, Html, Css, Xpath
Savoir utiliser un IDE (Eclipse, IntelliJ, … )

Méthodes pédagogiques

50 % théorie / 50 % pratique

Modalités d’évaluation

modalites_d_evaluation

Nos intervenants

nos_intervenants

Description

Lors de l’élaboration d’un projet, la recette identifie les anomalies et/ou les régressions en passant des batteries de tests fonctionnels. Ces tests deviennent de plus en plus complexes au fur et à mesure de l’évolution du projet et difficiles à maintenir.

A l’image des tests unitaires pratiqués par les équipes de développement, Selenium offre, au travers de scénarios de tests, une solution de validation fonctionnelle des IHM pouvant être exécutée plus tôt dans le cycle de vie d’un projet.

Au travers de cette formation, des différents exemples et cas d’application qui y seront développés, vous apprendrez notamment à utiliser l’outil Selenium, son API WebDriver.

Programme

Introduction aux tests

  • Différents niveaux de test
  • Tests d’intégration
  • Tests fonctionnels
  • Tests unitaires

 

Introduction à Selenium

 

Selenium IDE

  • Description du plugin Selenium IDE pour Firefox
  • Interagir avec une page web : commandes d’actions, commandes d’actions asynchrones
  • Accéder à des éléments : les accessors
  • Vérifier des éléments : les assertions
  • Différents moyen d’accéder à des éléments : xpath, id, …

 

Selenium WebDriver (via Java)

  • Piloter un navigateur via une API
  • Différents type de Drivers pour différents navigateurs
  • Pilotage du navigateur Firefox
  • Sélection d’un ou plusieurs éléments au sein d’une page (par id, tag, xpath, classname, …)
  • Sélection de sous-éléments. (exemple : balise imbriquée)
  • Création d’action à travers le Builder Pattern
  • Récupération d’attribut d’une balise
  • Manipulation de <form>, <select>, …
  • Contrôle des boutons du navigateur (back, forward, refresh)
  • Réalisation de capture d’écran automatique
  • Gestion des promps, alerts, messageBox et des fenêtres
  • Configuration des Cookies / timeout
  • Export de test SeleniumIDE pour Selenium WebDriver

 

Page Object Pattern

  • Concept
  • PageFactory & injection du Driver
  • Utilisation de @FindBy : binding d’élement via name, id, xpath, …
  • Utilisation de @FindAll : binding d’une liste d’éléments
  • Utilisation de @CacheLookup
  • Scénarios utilisant le Page Object Pattern

 

Selenium Grid

  • Démarrage d’une grille selenium (hub et node)
  • Utilisation d’une grille selenium via le RemoveWebDriver
  • Url exposée par le Hub
  • Configuration et sélection de navigateur via les DesiredCapabilities
  • Capture d’écran avec une grille selenium
  • Parallélisation des tests avec jUnit et Maven
  • Utilisation de SauceLabs

 

Intégration continue

 

  • Présentation du concept d’intégration continue
  • Exemple de configuration d’un jenkins
  • Utilisation d’un navigateur headless : phantomjs

 

SauceLabs

  • Utilisation de SauceLabs : Selenium Grid dans le cloud

 

Cucumber : spécifications exécutables

  • Présentation de Cucumber
  • Écriture d’un scénario Cucumber
  • Type de Step Cucumber
  • Gestion des langues
  • Intégration avec jUnit