L’Automatisation des Tests Web – Sélénium – Eclipse- Cucumber Gherkin

Nous avons parler de l’automatisation mobile mais n’oublions pas l’ancêtre… le web.

Afin de faciliter les tests manuels fonctionnels, plusieurs outils ont été développé et mis à disposition aux testeurs.

Sélénium, un framework – Gherkin, un type de syntaxe permettant de traduire les steps via Cucumber – Eclipse, un environnement de développement.

A partir de ces éléments, l’automatisation d’un site web peut commencer.

Mais n’oublions pas d’intégrer le processus de validation et la qualification des éléments que l’on automatise.

L’automatisation se base sur le processus de validation et de la recette. Donc, il y a des étapes.. création de cas de test, step, campagne de test .. bref, n’oublions pas la base.

Afin de bien procéder, commençons par l’installation des éléments:

1

Sur Eclipse:

2

Une fois que vos environnements sont fonctionnels,

3

Préparer l’arborescence des tests, incluant les étapes du tests et les éléments importants d’automatisation:

4

Le projet créé sur Eclipse reprend les mêmes étapes qu’une campagne de test fonctionnelle.

5

Une fois que la partie technique est fini..

Tournons -nous vers les navigateurs web,

Aujourd’hui, les navigateurs web nous offre beaucoup d’outils ou plugin afin de facilité certaine tache, comme les tests de performances, les tests de non -régression, et aussi l’automatisation.

6

Une fois que tout les éléments sont réunit, nous pouvons automatiser.

7

prenons l’exemple de Google:

  • activons la détections des éléments, via sélénium ou devtools
  • récupérer l’ID de la zone qui nous intéresse, ici la zone de recherche google.
  • Sur Eclipse, préparer le fichier . feature avec la syntaxe Gherkin

« La définition d’un scénario de test en Gherkin se fait selon trois étapes clés : Given, When Then.

  • Given liste les conditions initiales nécessaires au test (jeux de données)
  • When décrit les actions à effectuer (i.e. ce qui doit être testé)
  • Then décrit le résultat attendu en cas de bon fonctionnement du produit

Ce principe d’écriture des tests d’acceptation est une pratique que l’on retrouve usuellement dans la documentation des user stories même si l’outil Cucumber d’automatisation des tests n’est pas utilisé.  »

8

Comme dans les tests fonctionnels, l’automatisation de test a aussi des étapes, il faut les respecter.

Je fini par ce petit rappel, l’automatisation de test est géré par un testeur qualifié et donc ce dernier n’est pas un automate mais une personne qui aime son métier et qui aime avant tout le test 🙂 . L’automatisation de test est une marque de qualité.

Imene A-K

Je remercie @Ahmed Rouissi pour sa collaboration, aides, et soutiens à l’apprentissage de l’automatisation de test web.

Une réponse

  1. Bonjour,
    Sur la capture du fichier test.feature, on peut voir les instructions Given et Then mais pas When, pourriez-vous m’expliquer pourquoi?

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Agilité

Résultats du sondage « Quel testeur agile êtes-vous ?

Avant toute analyse je souhaiterais remercier les plus de 100 personnes qui ont répondues à ce sondage et qui permettent d’avoir une représentation plutôt fiable sur la vision du testeur agile. Sur les 111 personnes qui ont répondu, quasiment toutes se considèrent comme testeur et travaillent actuellement sur un projet/produit

Lire la suite »
Agilité

TDD: Test Driven Development

Définition Le TDD (Test Driven Developement) est, comme son nom l’indique, une méthode de développement. Elle consiste à écrire les tests avant d’écrire le code. Le but est donc pour l’équipe projet de développer un logiciel construit par la validation de tests plutôt qu’un logiciel construit par le suivi des

Lire la suite »
culture générale

[ISTQB] Les Objectifs des tests

Les tests sont très utiles et instinctifs. Nous en parlons souvent dans la taverne à travers, par exemple cet article sur le « but des tests » et celui sur « ce que nous apporte le test« . Le rôle des tests est une question universelle dans le monde du logiciel. Ce rôle est

Lire la suite »