Projet Webmaster
Gestion de projets web ntic

Du concept au projet informatique - De la maîtrise d’oeuvre à la maîtrise d’ouvrage

Web-ntic MOE MOA > Tests et recette > Selenium outils de test

Selenium outils de test

vendredi 2 mai 2014, par km

Selenium est un framework permettant de tester une application web. Voyons comment utiliser cet outil de test open source

Dans la famille des outils de test, il y a ceux avec des licences et ceux en open source, coté fonctionnalité il y a les outils gérant. les tests et ceux permettant de les exécuter.
Selenium fait partie de ces outils open source permettant d’exécuter des tests de manière automatisé
De plus Selenium est orienté web, alors que d’autres outils comme HP Quality Center est orienté écran (indépendamment de la technologie sous-jacente).

Plusieurs éléments composent Selenium :

  • Selenium IDE (integrated development environment),
  • Selenium Core : il s’agit du framework permettant d’utiliser les objets Selenium
  • Selenium RC : il s’agit d’un Remote control

Selenium IDE

Selenium IDE fonctionne avec Firefox, c’est un enregistreur de test, lequel peut ensuite exécuter les tests comme un robot. Les cas de tests enregistrés avec Selenium IDE sous Firefox peuvent ensuite être exécutés sur d’autres navigateurs.

Etant destinés à un robot de test à part entière, les cas de tests automatisés enregistrés avec Selenium IDE doivent respecter les règles liées à l’automatisation de cas de tests.

  • Prise en compte de smoke test
  • Points de départ et d’arrivée identiques de telle sorte que le cas de test puisse être rejoué.
  • Le cas de test supprime les données qu’il crée
  • Le cas de test ne teste qu’une chose

Fonctionnalités de Selenium IDE

Valider un élément : Selenuim propose deux modes de validation concernant la présence d’éléments à l’écran.

  • assert : sert à affirmer que l’élément existe, dans le cas contraire le cas de test prend fin
  • verify : sert à vérifier que l’élément existe, dans le cas contraire le cas de test se poursuit.
    Exemple : valider que le label correspondant à un bouton radio est bien identique au texte attendu dans le cas de test.
    Avec l’environnement internet, Selenium permet spécifiquement de vérifier la présence ou non d’un élément, un texte, un attribut, un état, une alerte, un titre.

Contrôler différentes fenêtres : Une difficulté apparait généralement avec les tests automatisés, lorsqu’il y a plusieurs fenêtres.
Avec les navigateurs modernes, en plus des fenêtres en pop-up, un navigateur peut ouvrir un lien dans la même fenêtre comme dans un nouvel onglet, voire dans la même page avec les scripts Ajax.
Selenium IDE gère ce multi-fenêtrage avec une fonction d’attente de type WaitFor pour gérer correctement les contextes.
La commande d’attente concerne les alertes, les éléments, les textes, les chargement de pages, les chargement de cadres (frame)

Mettre en variable Etant donné que les tests d’une page web peuvent dépendre de données présentes dans la page, il peut être utile de mettre la donnée en question dans une variable, afin de pouvoir la réutiliser plus tard.
C’est ce que Selenium IDE permet avec la commande de stockage de valeurs dans une variable.

Ces principales fonctionnalités de test de Selenuim IDE concernent la partie visuelle du site web, voyons ce que Selenuim apporte du coté du code généré sur le poste client.

Test en boites blanches

Si Selenuim fonctionne sur plusieurs navigateurs, il s’interface idéalement avec plusieurs outils spécifiques à ces derniers.
Citons :

  • Firebug
  • Firefinder
  • IE Developper Tools
  • Google Chrome Developper Tools

Les différents outils de développeur permettent d’accéder aux différents ID de la page web et avec Selenium d’interagir avec eux indépendamment de leur position dans la page.
Selenium peut interagir avec les ID des éléments comme avec leur nom. Avec des queries XPath, Selenium accède aux éléments du DOM (Document Object Model : arborescence des objets du code HTML tels que racine, éléments, attributs, textes) et permet d’interagir ainsi avec tous les éléments d’une page web.






Répondre à cet article et accéder au Forum Selenium outils de test

Imprimer Selenium outils de test