Re:Scripter les tests
Patrice Godard <[email protected]> Thu, 7 Apr 2011 10:56:27 +0200 (CEST)
| Newsgroups | gmane.comp.java.french.general |
|---|---|
| Message-ID | <8044203.303769.1302166587010.JavaMail.www@wwinf8225> |
Bonjour, J'ai fait un PoC dans cet esprit il y a quelque temps. Il s'agissait d'exploiter le fichier XML produit par un outil de modélisation de tests pour piloter Selenium. En gros j'ai défini une API pour Selenium de plus haut niveau que celle fournie avec des "primitives" plus adaptées à l'application à tester. Ensuite j'ai développé un outil (appli Java en ligne de commande) qui lit le fichier de description des tests, pilote Selenium via mes "primitives" et reporte les résultats de tests dans le fichier de description des tests. Mais bon, je crois qu'on ne va pas vraiment poursuivre dans cette voie car la modélisation des tests est coûteuse, à la fois en coût de licence et en temps de développement. On va probablement se contenter de tests Selenium pilotés par jUnit via notre surcouche à l'API Selenium qui permet de simplifier un peu l'écriture des tests. My 2 cents. Patrice > Message du 07/04/11 10:40 > De : "Jean-Baptiste BRIAUD -- Novlog" > A : "java Java" > Copie à : > Objet : Scripter les tests > > > > Bonjour à tous, > > Voilà un moment que je voudrais entamer le chantier de scripter nos tests. > Nous utilisons Selenium pour piloter par programme un navigateur. > Des sous-classes de JUnit enchainent les appels Selenium pour construire un usage plausible d'une application. > > Conceptuellement, j'aurais envie d'écrire ce genre de chose : > 1. login(l, p) > 2. trouver le champ "nom" (en fait le SeleniumID et non pas le label) > 3. entrer "Dupond" > 4. chercher le bouton "OK" (en fait le SeleniumID et non pas le label) > 5. Clicker sur le boutoun > ... > > Sauf que les appels à Selenium dans notre sous-classe JUnit sont beaucoup, beaucoup trop complexe. > En plus, il faut tout compiler les tests pour les lancer. > > Bref, j'aimerais scripter tout cela. > Moyennant une lib qui ne nécessite pas d'être recompilée et contenant par exemple, une classe pour un mot clé, > il est simple de proposer un interpréteur de fichier texte où le premier mot de chaque ligne correspond à une classe se mot clé. > Ensuite, la pattern Commande et "roule ma poule". > ... et en plus, çà existe déjà, et en plus je l'ai déjà utilisé dans le passé : > http://exactor.sourceforge.net/ > mais çà n'est plus mis à jour depuis 2008 et depuis le temps il a coulé de l'eau sous les scripts. > > Bref, est-ce qu'un de ces langages de scripts plus récent ne serait pas plus approprié ? > Je sur que oui pour au moins une raison : toute la logique de boucle, test, est déjà là et bien faite. > Sauf qu'il ne faudrait pas que le script devienne aussi complexe que l'actuelle sous-classe JUnit, sinon, çà ne sert plus à rien. > > ah oui, je ne l'ai pas dit, mais je parlais de ces langages de scripts qui tourne dans une JVM car la portabilité, c'est important. > Comment envisager "les appels" (est-ce des appels ?) aux mot clé du test : trouver le champ, cliquer, les divers assert, ... > > > Des reco, des idées ? > Une messagerie gratuite, garantie à vie et des services en plus, ça vous tente ? Je crée ma boîte mail www.laposte.net