Par Stéphane Bordage - 16/06/2009

Une fois le plan de test établi, il ne reste “plus” qu’à paramétrer chaque test puis générer les scénarios.
Vous devez disposer de :
Quelques conseils utiles si vous travaillez en équipe :
Pour ceux à l’aise avec le code, voici un exemple :
Il faut une entête XHTML avec un encodage en UTF8 (sinon le test ou le scénario n’est pas lu).

Il faut une entête XHTML avec un encodage en UTF8 (sinon le test ou le scénario n’est pas lu).
Notez “link rel=”selenium.base” href=”http://breek.fr”“

On ouvre un tableau HTML.

On se logout pour être sur que le test unitaire repart sur une base propre. Même chose pour le retour à la racine du site. Vous découvrirez vite que la commande “open” est très utile pour pointer directement vers la bonne URL sans passer par un “clic” qui lui peut ne plus fonctionner si des modifications sont effectuées sur l’interface.

On s’identifie avec le bon profil.

On ouvre le formulaire d’ajout du type de contenu “article”.

On rempli le formulaire à l’aide de plusieurs commande spécifiques puis on envoi le formulaire.
La commande “type” permet de remplir un champ (imput, textarea…). Notez que pour uploader une image (dans Drupal) il n’est utile de la charger de manière séquentielle, le submit final suffit.
La commande “click” exécute un clic sans attendre. Elle est utilisée à l’intérieur du formulaire pour déplier le fieldset “Données Article”. Notez que toutes les cibles sont basées sur le DOM.
La commande “Select” permet de sélectionner une valeur dans une liste déroulante simple. La commande “addSelection” permet de sélectionner plusieurs valeurs dans une liste à choix multiples.
Notez “//form[@id=’node-form’]/div/div/div[1]/div[5]/fieldset/legend/a” qui permet de cibler un élément particulier du DOM. Cette cible devra être réécrite avec xpath pour qu’elle fonctionne à coup sûr.
La commande clickAndWait exécute un clic mais contrairement à “click”, elle attend que la page soit chargée. Elle est donc utilisée pour naviguer entre les pages.
Enfin, la commande “verifyTextPresent” est très utile pour constater qu’une action a été, a priori, exécutée avec succès : il suffit de vérifier la présence du message de confirmation d’action (si on considère que les fonctions “core” du CMS fonctionnent à coup sur). On peut aller plus loin avec des commandes telles que “assert” et “waitFor”.
Pour en savoir plus, visitez http://seleniumhq.org/documentation/core/reference.html
On ferme le tableau, le body puis la page. Et voilà that’s all folks.
Je dois avouer que je n’ai pas compris comment créer facilement un scénario à partir de Selenium IDE. La méthode que je vous propose consiste donc à créer un tableau HTML en suivant la même logique que pour la création d’un test. La seul différence est qu’au lieu d’enchaîner des lignes comprenant 3 colonnes, on enchaîne des lignes avec 1 colonne qui appellent le test. Ce qui donne :

Les lecteurs du livre “Conduite de projet web” peuvent télécharger un modèle facilitant la génération de scénarios Selenium.
Ensuite, il suffit d’ouvrir le test et de le lancer. Les résultats sont lus de la même manière que pour un test.
Pour en savoir plus, le site officiel :
Commentaires
Poster un nouveau commentaire