Il y a 389 articles et 19 utilisateurs inscrits (ce bandeau est défini dans MediaWiki:Sitenotice)

« Selenium » : différence entre les versions

De AJLSM
Aller à la navigation Aller à la recherche
Aucun résumé des modifications
Aucun résumé des modifications
Ligne 67 : Ligne 67 :


Les répertoires {{path|pleade-*}} contiennent les fichiers de configuration à installer.
Les répertoires {{path|pleade-*}} contiennent les fichiers de configuration à installer.
Le répertoire {{path|pleade-libre-mootools-v1.4}} est la version de pleade-libre  
Le répertoire {{path|pleade-libre-mootools-v1.4}} est la version de pleade-libre ajournée avec la librairie mootools-v1.4.
ajournée avec la librairie mootools-v1.4.


<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
Ligne 187 : Ligne 186 :
Il est complété par les tests {{path|pl-4.2-recherche-resultats.html}} et {{path|pl-4.3-recherche-complexe.html}}.
Il est complété par les tests {{path|pl-4.2-recherche-resultats.html}} et {{path|pl-4.3-recherche-complexe.html}}.


TODO [RG] : L'arbre situé à droite du formulaire  de recherche est à tester.
TODO [RG] :  
* L'arbre situé à droite du formulaire  de recherche est à tester.




Ligne 197 : Ligne 197 :


TODO [RG] :
TODO [RG] :
  * la complétion est a testée.
* la complétion est a testée;
  * l'arbre à droite du formulaire de recherche n'a pas été testé.
* l'arbre à droite du formulaire de recherche n'a pas été testé.


FIXME [RG] :
FIXME [RG] :
  * à propos de la description des résultats de recherche,  
* à propos de la description des résultats de recherche,  
    présent en haut et en bas de la page,
  présent en haut et en bas de la page,
    leurs éléments ont des identifiants (@id) identiques.  
  leurs éléments ont des identifiants (@id) identiques;  
  * avec Pleade libre, le bouton "Effacer" ne fonctionne pas dans certains cas,
* avec Pleade libre, le bouton "Effacer" ne fonctionne pas dans certains cas,
    mais aucun test ne l'indique.
  mais aucun test ne l'indique;
  * certaines configurations n'ont pas été testées.
* certaines configurations n'ont pas été testées.
    
    
    
    
Ligne 213 : Ligne 213 :


TODO [RG] :
TODO [RG] :
  * Ce test a pour but de décrire les recherches croisées.   
* Ce test a pour but de décrire les recherches croisées.   
      
      


Ligne 224 : Ligne 224 :


TODO [RG] :
TODO [RG] :
  * La déconnexion à l'aide du bouton "Déconnexion".
* La déconnexion à l'aide du bouton "Déconnexion".




Ligne 242 : Ligne 242 :


TODO [RG] :
TODO [RG] :
  * tester les derniers éléments de la page non couvert par le test;
* tester les derniers éléments de la page non couvert par le test;
  * tester les fonctionnalités de la page.
* tester les fonctionnalités de la page.




Ligne 269 : Ligne 269 :
      
      
TODO [RG] :
TODO [RG] :
  * le scroll (action de la roulette de la souris) sur l'image principale
* le scroll (action de la roulette de la souris) sur l'image principale
    qui permet de zoomer;
  qui permet de zoomer;
  * les tests sont incomplets dans le cas d'un ensemble d'images;
* les tests sont incomplets dans le cas d'un ensemble d'images;
  * le masque de l'aperçu;
* le masque de l'aperçu;
  * la liste de vignettes du menu de navigation;
* la liste de vignettes du menu de navigation;
  * la grille;
* la grille;
  * le slider de la barre de navigation.
* le slider de la barre de navigation.





Version du 23 avril 2013 à 08:04

Selenium

Introduction

Les tests Selenium IDE pour Pleade ont été réalisés principalement durant le mois de février 2013.

Les outils mise en oeuvre sont :

  • Pleade 3.5-dev daté au 2013-02-22;
  • la librairie Mootools 1.4.5;
  • Firefox 18.0.2;
  • Selenium IDE 1.10.0;
  • le plug-in File Logging 1.1;
  • le plug-in Test Results 1.10;
  • le plug-in Selenium Expert 0.2.


Mise à jour de la librairie Mootools

Une version ajournée de pleade-libre a été appelée pleade-libre-mootools-v1.4.

Les répertoires et les fichiers concernés sont les suivants :

$ tree -L 1 theme/js/mootools/
theme/js/mootools/
├── mootools-core-1.3.1-nc.js
├── mootools-core-1.4.5-nc.js
├── mootools-more-1.3.1.1-nc.js
├── mootools-more-1.4.0.1-nc.js
└── README.mootools
$ tree -L 1 theme/js/pleade/common/util/
theme/js/pleade/common/util/
├── AjaxRequestHandler.js
├── displaySubgroup.js
├── HelpPanels.js
└── mootools-common.js

Les fichiers de la librairie Mootools sont utilisés par des feuilles de style XSL.

NOTE [RG] : à confirmer.


L'arborescence générale

$ tree -L 1 tests-selenium/
tests-selenium/
├── config           
├── docs
├── README.txt
├── results
└── tests


La configuration

Les instances de Pleade et de Selenium IDE doivent adopter une certaine configuration afin que les tests se déroulent dans le contexte souhaité.

Les répertoires pleade-* contiennent les fichiers de configuration à installer. Le répertoire pleade-libre-mootools-v1.4 est la version de pleade-libre ajournée avec la librairie mootools-v1.4.

$ tree -L 1 tests-selenium/config/
tests-selenium/config/
├── pleade-entreprise
├── pleade-libre
└── pleade-libre-mootools-v1.4

Un répertoire selenium-ide pourrait contenir un fichier javascript. Il permet de définir des fonctions javascript mises en oeuvre par Selenium IDE. Ce fichier n'est pas nécessaire à l'exécution des tests.


La documentation

Elle est constituée du fichier README.txt, disponible à la racine du projet, ainsi que des fichiers du répertoire docs :

$ tree -L 1 tests-selenium/docs/
tests-selenium/docs/
├── manuel_Pleade.pdf
└── test-recette.odt

Le document test-recette.odt est un cahier des charges, dont les tests pourraient refléter le contenu. Le document manuel_Pleade.pdf donne quelques indications pour l'utilisation de Pleade. Ce document n'est pas à jour.


Les tests

$ tree -L 1 tests-selenium/tests/
tests-selenium/tests/
├── pe-1.0-setEnv.html
├── pe-2.0-index.html
├── pe-7.0-img-viewer.html
├── pl-1.0-setEnv.html
├── pl-2.0-index.html
├── pl-3.0-ead-publish-form.html
├── pl-4.0-recherche-simple.html
├── pl-4.1-recherche.html
├── pl-4.2-recherche-resultats.html
├── pl-4.3-recherche-complexe.html
├── pl-5.0-login.html
├── pl-6.0-ead.html
├── pl-6.1-ead-manage.html
├── pl-7.0-img-viewer.html
├── pl-8.0-cdc.html
├── pl-8.1-pre-basket.html 	
├── pl-8.2-basket.html
├── pl-8.3-historic.html
└── plm-1.0-setEnv.html

L'ensemble des tests sont contenus dans le répertoire tests.

La nomenclature des fichiers est la suivante :

  • préfixe : pl (pleade-libre), plm (pleade-libre-mootools), pe (pleade-entreprise);
  • numéro : reflète l'ordre d'un sénario d'utilisation typique de Pleade;
  • suffixe : indique un sous-sénario, qui peut faire intervenir une ou plusieurs page d'un site Web.


Les tests de création de l'environnement *-1.0-setEnv.html

Un test de création d'environnement permet de mettre en place l'environnement requis par Selenium IDE pour une version particulière de Pleade, telles que pleade-libre ou pleade-entreprise.

On choisira le test à exécuter en fonction de sa version de Pleade. Le test doit être exécuté au début d'une série de tests.

  • pl-1.0-setEnv.html;
  • plm-1.0-setEnv.html;
  • ou pe-1.0-setEnv.html.

Le temps nécessaire au chargement de la première page après le démarrage de Tomcat étant important relativement aux temps de chargement des pages suivantes, le test charge la page de garde; le temps de chargement des pages suivantes peut ainsi être minimisé.


Le test *-2.0-index.html

Il test la page d'accueil du site Web. Il décrit les pages disponibles pour un utilisateur non connecté. Les parties non décrites par ce test devraient l'être par les autres tests.


Le test pl-3.0-ead-publish-form.html

Il test la publication de documents XML-EAD. Il connecte l'utilisateur sous le compte admin. Ensuite, il test la sélection d'un dossier à publier, puis le publie.


Le test pl-4.0-recherche-simple.html

Test le formulaire de recherche simple proposé par le formulaire du menu secondaire disponible dès la page d'accueil. Il propose les différentes syntaxes possibles pour l'entrée du formulaire.


Le test pl-4.1-recherche.html

Ce test décrit principalement la page de recherche et en particulier le formulaire de recherche avancé. La dernière partie du test effectue une recherche basique. Il est complété par les tests pl-4.2-recherche-resultats.html et pl-4.3-recherche-complexe.html.

TODO [RG] :

  • L'arbre situé à droite du formulaire de recherche est à tester.


Le test pl-4.2-recherche-resultats.html

Ce test couvre la page de résultats proposés en réponse à une recherche avancée, en particulier les trois formes de résultats disponibles : arbre, liste et tableau.

TODO [RG] :

  • la complétion est a testée;
  • l'arbre à droite du formulaire de recherche n'a pas été testé.

FIXME [RG] :

  • à propos de la description des résultats de recherche,
 présent en haut et en bas de la page,
 leurs éléments ont des identifiants (@id) identiques;  
  • avec Pleade libre, le bouton "Effacer" ne fonctionne pas dans certains cas,
 mais aucun test ne l'indique;
  • certaines configurations n'ont pas été testées.


Le test pl-4.3-recherche-complexe.html

TODO [RG] :

  • Ce test a pour but de décrire les recherches croisées.


Le test pl-5.0-login.html

Il test le système de connexion d'un utilisateur. Il connecte l'utilisateur par défaut : admin. Il termine par tester la déconnexion de cet utilisateur.

TODO [RG] :

  • La déconnexion à l'aide du bouton "Déconnexion".


Le test pl-6.0-ead.html

Teste partiellement la page permettant de visualiser les documents XML-EAD. La partie gauche, qui contient l'arbre, n'est pas testée, l'ouverture d'une branche de l'arbre ne semble pas évidente à obtenir à partir de Selenium IDE. Cette page permet l'accès à la visionneuse.


Le test pl-6.1-ead-manage.html

Ce test couvre la description de certains éléments de la page.

TODO [RG] :

  • tester les derniers éléments de la page non couvert par le test;
  • tester les fonctionnalités de la page.


Le test *-7.0-img-viewer.html

Ce fichier contient les tests pour la visionneuse Jpeg.

FIXME [RG] : Il existe une incertitude concernant les dimensions de l'image

 principale puisqu'elles varient pour une taille d'écran donnée 
 et les dimensions d'une fenêtre du navigateur donnée.
 Pour que le test "fonctionne", il est nécessaire de fixer les dimensions de la 
 fenêtre du navigateur sans négliger l'espace occupé par les différentes 
 barres (de navigation, personnelle, ...), ensuite il faut charger la 
 visionneuse dans le navigateur, puis renseigner les valeurs des différentes 
 dimensions de l'image principale et de finir de jouer le test.   
 Ainsi, à défaut de trouver une solution simple, la partie délicate du test
 a été placée dans le fichier pl-7.0-img-viewer-bis.html.     
    
 Les fichiers de résultats de tests 
 results/pleade-libre/pl-7.0-img-viewer-all-results.html 
 et results/pleade-entreprise/pl-7.0-img-viewer-all-results.html
 avaient été obtenus en incluant le test pl-7.0-img-viewer-bis.html
 dans le test pl-7.0-img-viewer.html.
   

TODO [RG] :

  • le scroll (action de la roulette de la souris) sur l'image principale
 qui permet de zoomer;
  • les tests sont incomplets dans le cas d'un ensemble d'images;
  • le masque de l'aperçu;
  • la liste de vignettes du menu de navigation;
  • la grille;
  • le slider de la barre de navigation.


Le test pl-8.0-cdc.html

Les tests relatifs au cadre de classement.


Les tests pl-8.1-pre-basket.html et pl-8.2-basket.html :

Teste le porte-documents de l'utilisateur. Le test pl-8.1-pre-basket.html permet d'ajouter des documents au porte-documents; et le test pl-8.2-basket.html teste le porte-documents lui-même.

NOTE [RG] : le fichier de test pl-8.1-all-basket.html montre une disfonctionnalité,

 ainsi que la raison pour laquelle le test relatif au porte-documents
 a été scindé en deux sous-tests pl-8.1-pre-basket.html et pl-8.2-basket.html.
 

FIXME [RG] : le téléchargement du document ZIP n'est pas testé

 car, bien que le paramètre eadeac-active-basket-zip
 du fichier buid/exe/parameter.xconf ait pour valeur true,
 l'icône n'apparaît pas dans l'interface de Pleade entreprise.
 

TODO [RG] : le bug est a indiqué dans Mantis.


Le test pl-8.3-historic.html

Le test de l'historique des recherches.


Les résultats des tests

$ tree -L 1 results/
results/
├── logs
├── pleade-entreprise
├── pleade-libre
└── pleade-libre-mootools

Le plug-in File Logging 1.1 permet à Selenium IDE de générer un fichier de journalisation, aussi appelé logs.

Les logs sont consignés dans le fichier texte logs/tests.log. Ce fichier de logs est définit dans Selenium IDE :

Barre de menu

 >> Entrée "Options" 
 >> Fenêtre de dialogue "Options Selenium IDE"
 >> Onglet "FileLogging"
 >> Champs de saisie "Log Fichier"
 

Par exemple, avec la valeur /home/greg/workspace/pleade-ajlsm/tests-selenium/results/logs/tests.log.

Les logs de Selenium indique le changement de cas de tests :

2013-03-06 10:44:23 [info] Changed test case

Et chaque test début par un titre :

2013-03-06 10:44:29 [info] echo: Visionneuse

Suivi du nom du fichier de tests en cours de lecture :

2013-03-06 10:44:30 [info] echo: fichier : pl-7.0-img-viewer.html

Chaque commande du test est indiquée lorsque le niveau de journalisation a pour valeur "Info"

2013-03-06 10:44:37 [info] Executing: |echo | ${currentCote} |  |
2013-03-06 10:44:37 [info] echo: SS_Y_445


Les répertoires pleade-* contiennent les résultats des tests.

Ainsi, par exemple pour pleade-libre, les résultats de tests obtenus sont les suivant :

$ tree -L 1 results/pleade-libre
results/pleade-libre
├── pl-1.0-setEnv-results.html
├── pl-2.0-index-results.html
├── pl-3.0-ead-publish-form-results.html
├── pl-4.0-recherche-simple-results.html
├── pl-4.1-recherche-results.html
├── pl-4.2-recherche-resultats-results.html
├── pl-4.3-recherche-complexe-results.html
├── pl-5.0-login-results.html
├── pl-6.0-ead-results.html
├── pl-6.1-ead-manage-results.html
├── pl-7.0-img-viewer-all-results.html
├── pl-7.0-img-viewer-results.html
├── pl-8.0-cdc-results.html
├── pl-8.1-pre-basket-results.html
├── pl-8.2-basket-results.html
└── pl-8.3-historic-results.html


A savoir

Selenium IDE

Les variables définies dans Selenium IDE ne peuvent pas contenir de caractère tiret.

Plug-in Page Coverage

Le plug-in Page Coverage est relativement intéressant, mais n'est pas utilisable avec Firefox 18.0, mais seulement avec les versions antérieure à la version 18.0. Ce plug-in peut provoquer une erreur lors du déroulement de certains tests :

error in page coverage highlight TypeError: element.style is indefined


En cas de message d'erreur lors de la publication de documents

Origine possible de l'erreur :

  • manque de ressource : par exemple accès au disque dur ou garbage collector saturé;
  • il existe une autre publication en cours;
  • il existe un lock, concrétisé par un fichier build/exe/module-eadeac/datadir/*.lck,

définit par la configuration.

Dans les logs :

Error lockfile: context://module-eadeac/datadir/pleade_index.lck 
   - Tue Mar 05 09:31:28 CET 2013 **

Pour sortir de ce cas de figure :

  • dans un premier temps, on supprime le fichier de lock pleade_index.lck
puis on vérifie à chaud si ce lock était bien à l'origine de l'erreur;
  • dans un second temps, on arrête tomcat,
puis on supprime les répertoires build/exe/module-eadeac/datadir,
ainsi que les sous-répertoires temp et work 
du répertoire $TOMCAT_HOME/webapps;
  • on redémarre tomcat.