IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Tests et Performance Java Discussion :

Tutoriel test d'application Web avec Selenium


Sujet :

Tests et Performance Java

  1. #1
    Membre confirmé

    Homme Profil pro
    Développeur Java
    Inscrit en
    Décembre 2005
    Messages
    144
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Décembre 2005
    Messages : 144
    Points : 645
    Points
    645
    Par défaut Tutoriel test d'application Web avec Selenium
    Bonjour à tous,

    je viens de terminer un article sur les tests d'applications Web avec Selenium :
    http://atatorus.developpez.com/tutor...avec-selenium/

    Si vous avez des critiques ou des idées d'améliorations, n'hésitez pas à en faire part dans la discussion !

    Denis

  2. #2
    Membre actif Avatar de crashtib
    Homme Profil pro
    Support technico-fonctionnel
    Inscrit en
    Avril 2009
    Messages
    221
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Support technico-fonctionnel
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2009
    Messages : 221
    Points : 204
    Points
    204
    Par défaut
    Merci pour ton tutoriel Java qui m'a permis de démystifier un peu la bête.

    Attention au jargonage que tu ne prends pas troujours la peine d'expliciter, mais je me dis que ton public est déjà sensé connaître les définitions...

  3. #3
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2014
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2014
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Commentaire tuto sélénium
    Bonjour,

    Votre tuto est très bien fait, clair et organisé. Je me permets de vous demander s'il était possible de mettre un lien pour partager les codes sources de votre application web de manière à tester votre appli.

    Cordialement

  4. #4
    Modérateur
    Avatar de kolodz
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2008
    Messages
    2 211
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 211
    Points : 8 316
    Points
    8 316
    Billets dans le blog
    52
    Par défaut
    Bon tutoriel !
    La partie sur le chargement des page et des wait implicite ou non est bien couvert.

    Compte tu faire un autre tutoriel sur comment on gère les téléchargement et la fermeture des pop-up ?
    Sachant que c'est des questions qui revient assez souvent.

    Cordialement,
    Patrick Kolodziejczyk.
    Si une réponse vous a été utile pensez à
    Si vous avez eu la réponse à votre question, marquez votre discussion
    Pensez aux FAQs et aux tutoriels et cours.

  5. #5
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Mars 2013
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : France, Doubs (Franche Comté)

    Informations forums :
    Inscription : Mars 2013
    Messages : 1
    Points : 1
    Points
    1
    Par défaut des corrections ont été apportées
    Salut,

    excellent tutoriel (pour ce que j'en ai parcouru pour le moment)

    je profite d'avoir 5 min pour suggérer quelques légères corrections venant tout simplement de l'amélioration de Selenium IDE.
    dans la version que j'ai installé (2.9.0), l'export du cas de test avec java JUnit 4 webdriver ne présente plus les soucis que tu mentionne (l'URL est correcte, le selectByValue également.

    pour la suite, je continue le tuto

    Merci

  6. #6
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    29
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 29
    Points : 32
    Points
    32
    Par défaut
    Bonjour,

    Dommage qu'il n'est pas possible de l'utiliser sous internet explorer.

  7. #7
    Modérateur
    Avatar de kolodz
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2008
    Messages
    2 211
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 211
    Points : 8 316
    Points
    8 316
    Billets dans le blog
    52
    Par défaut
    C'est possible d'après ce que je sais. Cependant, le driver n'est pas fournit :
    https://code.google.com/p/selenium/w...ExplorerDriver

    Cordialement,
    Patrick Kolodziejczyk.
    Si une réponse vous a été utile pensez à
    Si vous avez eu la réponse à votre question, marquez votre discussion
    Pensez aux FAQs et aux tutoriels et cours.

  8. #8
    Rédacteur

    Avatar de autran
    Homme Profil pro
    Développeur Java
    Inscrit en
    Février 2015
    Messages
    1 241
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2015
    Messages : 1 241
    Points : 7 653
    Points
    7 653
    Billets dans le blog
    55
    Par défaut
    Bravo un tuto de très bonne qualité !
    On est accroché dès le début par la simplicité de l'installation et de l'enregistrement du premier test.
    Et quand on commence à entrer dans le code ça devient vraiment passionnant.
    Merci
    Développeur Java
    Site Web

  9. #9
    Candidat au Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Octobre 2015
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2015
    Messages : 1
    Points : 2
    Points
    2
    Par défaut Importer le projet
    Bonjour,

    Je vais peut être passer pour un andouille mais tant pis. Je suis un débutant de chez débutant, et j'aimerai effectuer les tests de ce projet. Seul problème, c'est que je n'arrive pas à importer le projet dans Eclipse. Comment fait ont pour ouvrir l'interface graphique dans une page web?

    Merci pour votre réponse.

  10. #10
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2016
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2016
    Messages : 2
    Points : 3
    Points
    3
    Par défaut
    il te suffit de télécharger Selenium http://www.seleniumhq.org/download/ , puis dézipe la version que tu viens de télécharger (version java je suppose vu que tu es sous Eclipse) ensuite tu créé un projet lamba, tu vas dans Build Path ->Configure Build Path-> Add external Jars et tu copies tous les jars du fichier que tu as dézipé dans l'espace prévu pour.
    C'est tardif mais bon pour de futurs aventuriers ça peut servir
    Surtout que la nouvelle version de Selenium est un peu galère à configurer pour fonctionner correctement

  11. #11
    Candidat au Club
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 2
    Points : 2
    Points
    2
    Par défaut Lancement de l'application à tester
    Bonjour,

    Je me permets de relancer la discussion sur le lancement de l'application à tester du tutoriel. J'utilise Eclipse et je suis débutante en développement. J'ai suivi la méthode indiquée par mamrou14, j'ai créé un nouveau projet java mais je ne trouve aucun ficher jar dans le zip du tutoriel ou bien s'agit-il d'autres fichier zip?

    Du coup quelqu'un saurait me dire comment faire pour ouvrir l'interface graphique dans une page web?

    Merci d'avance pour vos réponses

  12. #12
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2016
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2016
    Messages : 2
    Points : 3
    Points
    3
    Par défaut
    C'est en effet problématique car ils y sont normalement..

  13. #13
    Nouveau Candidat au Club
    Homme Profil pro
    Testeur
    Inscrit en
    Octobre 2016
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Testeur

    Informations forums :
    Inscription : Octobre 2016
    Messages : 1
    Points : 1
    Points
    1
    Par défaut
    Bonjour à tous,

    Je déterre de nouveau ce sujet d'il y a quelques mois mais j'ai également quelques problèmes.

    Comme l'internaute précédent, je ne trouve pas ces fameux fichiers jar.

    Par contre, étant débutant il est possible que je fasse un truc de travers soit dans la configuration de mon projet sous Eclipse (j'utilise la version 4.4 luna) soit dans la recherche même des fichiers jar via l'onglet "add externals jar". J'ajoute que je travaille en java également et que j'ai téléchargé Selenium IDE (V2.9.1).

    Merci de votre aide

  14. #14
    Membre extrêmement actif
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mars 2015
    Messages
    1 104
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2015
    Messages : 1 104
    Points : 2 573
    Points
    2 573
    Par défaut
    Bonjour,

    Est-ce que Selenium est réellement adapté pour des applications web complexes et lourdes ? Est-ce que quelqu'un, ici, a réussi à automatiser et industrialiser ses tests fonctionnels web, sous IE, Chrome et Firefox ?

    J'ai écris quelques tests avec l'aide de Selenium IDE (plugin firefox), puis exécutés sous eclipse avec JUnit. Des cas d'utilisation élémentaires : login sur le site, navigation, attendre qu'un éventuel loader disparaisse, éditer un formulaire, valider, une assertion pour valider le test. Et je suis surpris du comportement erratique des différents "WebDriver" (chrome, gecko). Certains éléments sont cliquables sous firefox mais pas sous chrome ("Element is not clickable at point", bug connu après recherche). Ca peut concerner des boutons d'action, des images sélectionnables, ou carrément un lien dans un header. Pire encore, certaines étapes de mes tests sont parfois sautées inexplicablement (du genre, il chercher à éditer un champ avant d'avoir navigué jusqu'à la bonne page). Pourtant, quand j'exécute mon test en mode debug, pas à pas, je vois bien que je passe par toutes les lignes. Les logs de JUnit sont trop succincts. Ce que je voudrais : comprendre ce qu'exécute réellement le navigateur, sur quoi il clique, pas à pas.

    Dans quels cas Selenium (la dernière version) est fiable ?
    "If the revolution ain't gon' be televised
    Then fuck, I'll probably miss it" - Aesop Rock

  15. #15
    Membre actif Avatar de zaza576
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Août 2013
    Messages
    175
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Août 2013
    Messages : 175
    Points : 275
    Points
    275
    Par défaut
    Citation Envoyé par Grogro Voir le message
    Bonjour,

    Est-ce que Selenium est réellement adapté pour des applications web complexes et lourdes ? Est-ce que quelqu'un, ici, a réussi à automatiser et industrialiser ses tests fonctionnels web, sous IE, Chrome et Firefox ?

    J'ai écris quelques tests avec l'aide de Selenium IDE (plugin firefox), puis exécutés sous eclipse avec JUnit. Des cas d'utilisation élémentaires : login sur le site, navigation, attendre qu'un éventuel loader disparaisse, éditer un formulaire, valider, une assertion pour valider le test. Et je suis surpris du comportement erratique des différents "WebDriver" (chrome, gecko). Certains éléments sont cliquables sous firefox mais pas sous chrome ("Element is not clickable at point", bug connu après recherche). Ca peut concerner des boutons d'action, des images sélectionnables, ou carrément un lien dans un header. Pire encore, certaines étapes de mes tests sont parfois sautées inexplicablement (du genre, il chercher à éditer un champ avant d'avoir navigué jusqu'à la bonne page). Pourtant, quand j'exécute mon test en mode debug, pas à pas, je vois bien que je passe par toutes les lignes. Les logs de JUnit sont trop succincts. Ce que je voudrais : comprendre ce qu'exécute réellement le navigateur, sur quoi il clique, pas à pas.

    Dans quels cas Selenium (la dernière version) est fiable ?
    Bonjour Grogro,

    oui Sélénium est réellement adapté pour des applis web lourdes et complexes. Nous avons actuellement développé, maintenu et industrialisé plusieurs centaines de tests autos joués quotidiennement.

    On a favorisé les navigateurs avec le plus d'usagers pour notre besoin.
    On a favorisé le passage à la version la plus récente de Sélénium et pareillement pour les webdrivers.
    Nos tests autos fonctionnels de bout en bout fonctionnent à merveille.

    Parfois, il s'agit juste de rajouter un peu de temporisation pour laisser le temps à tes webelements présents dans ton DOM de ta page de se charger correctement avant d'interagir avec eux. Tu demandes peut être à Sélénium d'aller trop vite en besogne et ton appli web ne suit pas ! Je ne connais pas suffisamment SeleniumIDE mais ce que je te racontes, ce sont des problématiques que nous avions dans le passé !

    Parfois un simple : selenium.waitForElementPresent(By.xpath(monLocator)); ou un simple selenium.waitForPageToLoad(urlMaPage) suffit pour ensuite interagir avec tes champs de page !

    Ensuite, tu peux aussi t'orienter vers un système de reporting pour visualiser ton parcours utilisateur dans ton appli web, et demander à Sélénium que, pour chaque action fonctionnellement intéressante (routage vers autre page, action click, action saisie texte, ...), Sélénium te le stocke dans ton rapport !

    Tiens moi au courant de la solution que tu souhaites entreprendre !
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    function googleIsYourF*ck*ngFriend(String url, String maQuestion){
        goTo(url);
        reponse = find(maQuestion);
        if(isAcceptable(reponse)){
            clickOn(By.xpath("//button[@id='resolvedButton']"));
        }
        sendMessage("Merci");
    }
    
    googleIsYourF*ck*ingFriend("http://www.google.fr", "ma question");

  16. #16
    Nouveau Candidat au Club
    Femme Profil pro
    Ingénieur validation
    Inscrit en
    Avril 2018
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur validation
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2018
    Messages : 1
    Points : 1
    Points
    1
    Par défaut
    Bonjour,

    Pour répondre à @Zanjara, j'ai réussi a installer le projet grâce à maven: https://thierry-leriche-dessirier.de...eclipse-5-min/

    Cependant, je suis une totale débutante en web. Pouvez-vous m'indiquer comment lancer l'application JSF du tutoriel de @Atatorus ?

    Merci d'avance.

  17. #17
    Candidat au Club Avatar de plieuseParis
    Femme Profil pro
    Testeur logiciel
    Inscrit en
    Octobre 2019
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Testeur logiciel

    Informations forums :
    Inscription : Octobre 2019
    Messages : 3
    Points : 3
    Points
    3
    Par défaut
    Bonjour,
    Merci pour ce tutoriel.
    Je crois que le code de tuto-selenium-complet.zip est périmé... Quand on lance le projet, ça génère du code source, mais il n'est pas interprété correctement par les navigateurs Chrome 78.0.3904.87, Firefox 70.0.1 et Internet Explorer 11.0.9600.19507 sur Windows 7.
    Par exemple, voici le code source que j'ai obtenu pour page1.xhtml :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
     
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <ui:composition xmlns="http://www.w3.org/1999/xhtml"
    	xmlns:h="http://java.sun.com/jsf/html"
    	xmlns:p="http://primefaces.org/ui"
    	xmlns:ui="http://java.sun.com/jsf/facelets"
    	xmlns:f="http://java.sun.com/jsf/core" template="layout.xhtml">
     
    	<ui:define name="content">
    		<h1>
    			<h:outputText id="pageTitle" value="#{msg['page1.title']}" />
    		</h1>
    		<p:panel id="panel" header="#{msg['page1.panel_title']}">
    			<h:outputLabel id="label" for="nextPage" value="#{msg['page1.text_page_label']}" />
    			<p:panelGrid columns="1">
    				<p:inputText id="pageText" value="#{navigator.nextPage}"
    				                       converterMessage="${msg['error.conversion_to_integer']}" 
    				                       validatorMessage="${msg['error.page_number_range']}">
    					<f:validateLongRange minimum="1" maximum="3" />
    				</p:inputText>
    				<h:message id="pageError" for="pageText" style="color:red" />
    			</p:panelGrid>
    			<p:commandButton id="nextPage"
    				value="#{msg['page1.next_page_button']}" action="#{navigator.go}"
    				ajax="false" />
    		</p:panel>
    	</ui:define>
    </ui:composition>
    Du coup, on s'arrête dans le tutoriel avant de lancer Sélénium IDE.
    Marie

Discussions similaires

  1. Test application Web avec Delphi
    Par Soulama dans le forum Web & réseau
    Réponses: 0
    Dernier message: 18/11/2010, 17h13

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo