DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Aide / Développer une application ou un site / Test / Tests automatiques
  • Présentation
  • Afficher le gestionnaire de tests
  • Fonctionnalités du gestionnaire de tests
  • Fenêtre de gestion des tests d'un élément
  • Options du ruban
  • Description d'un scénario
  • Code d'un scénario
  • Evénement "Avant le test"
  • Evénement "Scénario du test"
  • Evénement "Après le test"
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadWidget IOSApple WatchMac CatalystUniversal Windows 10 App
Autres
Procédures stockées
Présentation
Le gestionnaire de tests permet de :
  • afficher sous l'éditeur la liste des tests (ou scénarios) attachée à un élément.
  • paramétrer les différents tests.
Le compte-rendu du passage du test est affiché dans le volet "Résultats des tests".
Afficher le gestionnaire de tests
La liste de tous les tests automatiques existants peut être visualisée dans le dossier "Tests" du volet "Explorateur de projet".
Les différents scénarios sont regroupés selon l'élément testé (ou l'élément ayant débuté le test automatique). Par exemple, "TEST_FEN_saisieadresse" regroupe tous les scénarios de test effectués à partir de la fenêtre "FEN_saisieadresse".
Pour afficher le gestionnaire de tests concernant un élément, utilisez une des méthodes suivantes :
  • double-cliquez sur le nom du groupe de tests (dans le volet "Explorateur de projet").
  • affichez l'élément (la fenêtre, la classe, ...) sous l'éditeur. Sous le volet "Tests automatiques", dans le groupe "Tests", cliquez sur "Voir les tests associés".
Fonctionnalités du gestionnaire de tests

Fenêtre de gestion des tests d'un élément

La fenêtre de gestion des tests automatiques d'un élément est la suivante :
Cette fenêtre permet de :
  • Visualiser la synthèse de l'ensemble des scénarios associés à l'élément en cours. Dans la partie gauche de la fenêtre. Les tests sont classés en plusieurs catégories :
    • Tests autonomes : tests indépendants. Par exemple, pour un test autonome sur une fenêtre, la fenêtre se ferme à la fin du test.
    • Tests enchaînés : tests exécutés à la suite l'un de l'autre. Par exemple, pour des tests enchaînés sur une fenêtre, la fenêtre reste ouverte à la fin du premier test pour pouvoir exécuter le test suivant sur la même fenêtre.
    • Sous-tests : tests n'étant pas appelés directement mais uniquement via la fonction PiloteFenêtre.
  • Afficher le code d'un scénario : il suffit de sélectionner un scénario dans l'arborescence affichée à gauche. Le code WLangage correspondant est affiché dans la partie droite de l'éditeur.
Depuis cette fenêtre, il est possible de :
  • Lancer un scénario : il suffit de sélectionner le scénario voulu dans l'arborescence affichée à gauche et de sélectionner l'option "Lancer" du menu contextuel.
  • Afficher la description d'un scénario : il suffit de sélectionner un scénario dans l'arborescence affichée à gauche et de sélectionner l'option "Description" du menu contextuel.
  • Renommer ou supprimer un scénario : il suffit de sélectionner un scénario dans l'arborescence affichée à gauche et de sélectionner l'option "Renommer" ou "Supprimer" du menu contextuel.
  • Créer un nouveau scénario (option "Nouveau scénario" du menu contextuel) : le scénario créé est vide et le code WLangage correspondant peut être saisi.
  • Créer un groupe de tests (option "Nouveau groupe de tests" du menu contextuel) : les différents scénarios peuvent être regroupés dans un groupe de tests en réalisant un "Drag and Drop" du scénario.
Différents pictogrammes permettent de connaître l'état du test :
  •  : test passé sans erreur.
  •  : test modifié.
  •  : test en erreur.
Le compte-rendu du passage du test est affiché dans le volet "Résultats des tests".

Options du ruban

Certaines fonctionnalités de l'éditeur de tests sont regroupées dans l'onglet "Tests automatiques" du ruban.
Les options sont les suivantes :
  • Options du groupe "Tests" :
    • Nouveau : Permet de créer un nouveau script. Il est possible de :
      • Enregistrer un nouveau scénario :
      • Nouveau scénario vierge : Créer un scénario vierge.
      • Importer un scénario enregistré sur l'application : Permet d'importer dans le projet en cours un scénario de test (fichier wsct) créé par l'utilisateur. Pour plus de détails, consultez Test automatique créé par l'utilisateur.
    • Exécuter le test : Permet d'exécuter le test en cours sous l'éditeur de tests.
    • Exécuter l'ensemble :
      • Lancer tous les tests du projet : Permet de lancer tous les scénarios définis sur tous les éléments du projet.
      • Lancer tous les tests non passés : Permet de lancer tous les scénarios qui n'ont pas encore été lancés.
        Remarque : Un scénario modifié et non lancé est considéré comme un test non passé.
      • Lancer tous les tests ayant détecté des erreurs : Permet de lancer uniquement les scénarios qui sont en erreur.
      • Lancer les tests automatiques au ralenti : Si cette option est sélectionnée, la vitesse d'exécution du scénario est ralentie.
      • Activer l'audit dynamique pendant les tests automatiques : Si cette option est sélectionnée, l'audit dynamique est automatiquement lancé au début de l'exécution des scénarios de test et le compte-rendu de l'audit est affiché à la fin de l'exécution du scénario.
      • Activer le mode strict pendant les tests automatiques : Si cette option est sélectionnée, en cas d'erreur du test (fonction TestVérifie renvoyant Faux, erreurs, assertions, ...), le test s'arrête automatiquement dans le débogueur sur l'itération en cours.
    • Voir les résultats : Permet d'afficher les résultats du test en cours dans le volet "Résultats des tests".
    • Aller à l'objet : Permet d'afficher sous l'éditeur correspondant, l'élément du projet associé au scénario affiché dans l'éditeur de tests.
  • Options du groupe "Automate de test" :
    • Générer la bibliothèque : Permet de générer la bibliothèque de tests, nécessaire pour effectuer des tests directement sur l'exécutable. Pour plus de détails, consultez Tests automatiques sur un exécutable.
    • Lancer l'automate : Permet de sélectionner et de lancer les tests voulus avec l'automate de test sur l'exécutable. Pour plus de détails, consultez Tests automatiques sur un exécutable.
  • Options du groupe "Couverture de code" : Permet de configurer les données affichées par le code coverage. Pour plus de détails, consultez Code coverage.
Description d'un scénario
Pour afficher la description d'un scénario de test :
  1. Sélectionnez le scénario dans l'arborescence du gestionnaire de tests.
  2. Sélectionnez l'option "Description" du menu contextuel.
La description d'un scénario de test permet de saisir des informations dans différents onglets :
  • "Général" : Permet d'indiquer le nom du test et un libellé compréhensible.
  • "Détails" : Permet d'indiquer (dans le cas d'une fenêtre) :
    • Si le test doit déclencher une erreur si la fenêtre ne peut pas se fermer à la fin du test. Cette option permet sur les tests unitaires d'une fenêtre de vérifier si la fenêtre se ferme. Si cette option est sélectionnée, le test est un test autonome.
    • Si le test doit garder la fenêtre ouverte à la fin de son exécution pour enchaîner d'autres tests sur cette fenêtre. Cette option permet par exemple d'enchaîner plusieurs tests de fenêtre. Cette option est automatiquement cochée si lors du test d'une fenêtre, une seconde fenêtre est ouverte. Si cette option est cochée, le test est un test enchaîné.
    • Si le résultat du test dépend d'un enchaînement de tests. Dans ce cas, le test ne peut pas être lancé seul. Si cette option est cochée, le test est un sous-test.
    L'onglet "Détails" permet également de redéfinir les paramètres d'ouverture de la fenêtre pour le test (dans le cas d'un test autonome uniquement).
    En effet, lors du test d'une fenêtre paramétrée, il peut être intéressant de tester l'ouverture de la fenêtre en utilisant des paramètres spécifiques. Par défaut, les paramètres donnés lors de la création du test sont indiqués.
Code d'un scénario
Bien entendu, il est possible de modifier le code du scénario de test. En effet, le code du scénario est écrit en WLangage et peut facilement être modifié. Pour accéder au code du scénario, il suffit de sélectionner un scénario dans l'arborescence affichée à gauche. Le code WLangage correspondant est affiché dans la partie droite de l'éditeur.
Trois zones de code sont affichées :
  • l'événement "Avant le test". Cet événement est exécuté avant le test.
  • l'événement "Scénario du test". Cet événement correspond au code exécuté pour tester l'élément voulu.
  • l'événement "Après le test". Cet événement permet par exemple de vérifier les résultats du test (par exemple par rapport à des données présentes dans un fichier Etalon). De manière générale, cet événement permet de fermer et de libérer tous les éléments ouverts et alloués dans l'événement "Avant le test".

Evénement "Avant le test"

L'événement "Avant le test" permet par exemple de :
  • localiser les données à utiliser pour le test,
  • donner tous les paramètres nécessaires au test,
  • définir des variables et définir un jeu de données de test (via la fonction TestAjouteItération).
Exemple :
// -- Evénement "Avant le test" d'un test sur une procédure
// Deux paramètres ont été définis dans l'événement "Scénario de test"
// Ajoute les données de test
TestAjouteItération("test@test.fr", Vrai)
TestAjouteItération("non valide", Faux)
TestAjouteItération("", Faux)
TestAjouteItération("test.test.test@test.fr", Vrai)
TestAjouteItération("test@test@test.fr", Faux)
TestAjouteItération("test.fr", Faux)
TestAjouteItération("http://www.test.fr", Faux)

Evénement "Scénario du test"

L'événement "Scénario du test" correspond au code exécuté par le test.
Il est possible de modifier le code du scénario, d'ajouter des manipulations dans le test. Il est notamment possible d'utiliser les fonctions spécifiques aux tests automatiques ou les fonctions Pilote.
Il est également possible de remplacer des valeurs par exemple par des paramètres (pour utiliser un jeu de données de test). Dans ce cas, il est possible de déclarer une procédure dans ce code, pour spécifier les paramètres attendus.
Exemple 1 : Script utilisant un jeu de données de test et un contrôleur
Dans ce code, la variable Contrôleur1 est une variable définie en tant que contrôleur (via l'attribut d'extension <contrôleur>). Cette variable de type contrôleur peut alors être utilisée dans le code du test par exemple pour vérifier le résultat d'une procédure. Dans notre exemple, la ligne de code :
Contrôleur1 = bVerifEmail(psEMail)
exécute la procédure bVérifieEmail en lui passant le paramètre "psEmail" et compare le résultat à la valeur définie pour la variable "Contrôleur1".
// Définition de deux paramètres pour créer un jeu de données de test
// La valeur de ces paramètres est définie dans l'événement "Avant le test"
PROCÉDURE MonScénario(psEMail, Contrôleur1 est un booléen<contrôleur>)
Contrôleur1 = bVerifEmail(psEMail)
Exemple 2 : Script utilisant un jeu de données de test et la fonction TestVérifie
Dans ce code, la procédure correspondant au test attend deux paramètres. Le test du jeux de données est réalisé avec la fonction TestVérifie.
// Définition de deux paramètres pour créer un jeu de données de test
// La valeur de ces paramètres est définie dans l'événement "Avant le test"
PROCÉDURE MonScénario(psEMail, Contrôleur1 est un booléen)
TestVérifie(Contrôleur1 = bVerifEmail(psEMail), "Erreur du test pour " + psEMail)

Evénement "Après le test"

L'événement "Après le test" permet par exemple de vérifier les résultats du test (par exemple par rapport à des données présentes dans un fichier Etalon). De manière générale, cet événement permet de fermer et de libérer tous les éléments ouverts et alloués dans l'événement "Avant le test".
Exemple : Suppression des données créées lors du test : ce code permet de vérifier si l'adresse de test a bien été créée et permet de la supprimer si nécessaire.
// On vérifie si l'adresse s'est bien enregistrée
HLitRecherchePremier(ADRESSE, NOM, "TEST")
SI HTrouve(ADRESSE) = Faux ALORS
// Le test n'est pas ok
TestEcritRésultat(terErreur, "La base de données n'a pas été correctement mise à jour")
SINON
// Test ok, on peut supprimer
TestEcritRésultat(terInfo, "Base de données mise à jour")
// Suppression de l'adresse de test
HSupprime(ADRESSE)
TestEcritRésultat(terInfo, "Adresse de test supprimée")
FIN
Version minimum requise
  • Version 14
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire

Dernière modification : 23/06/2022

Signaler une erreur ou faire une suggestion | Aide en ligne locale