Conseils pour l'enregistrement de tests fonctionnels

Cette section décrit les moyens de résoudre ou d'éviter certains incidents qui peuvent survenir durant l'enregistrement d'un script.

Activation de vos JRE et navigateurs Web

Vous devez activer vos environnements JRE pour le test d'applications Java, et vos navigateurs Web pour le test d'applications HTML. Si vos JRE ou navigateurs ne sont pas activés, le moniteur d'enregistrement est vide lorsque vous tentez un enregistrement sur une application Java ou HTML. Pour cette raison, il est conseillé de maintenir le moniteur visible pendant l'enregistrement. Si vous constatez ce symptôme, vous devez exécuter l'outil d'activation. Pour plus d'informations, voir les rubriques Activation d'environnements Java et Activation de navigateurs Web.

Activation et test de shells Eclipse et d'applications Eclipse RCP (Rich Client Platform)

Functional Tester peut servir à tester des extensions du shell Eclipse. Vous devez pour cela activer le shell concerné en utilisant l'onglet Plateformes Eclipse de l'outil d'activation (Enabler) de Functional Tester. Si votre shell n'est pas activé, vous pouvez le savoir en observant le moniteur d'enregistrement : il reste vide lorsque vous tentez un enregistrement sur ce shell. Pour cette raison, il est conseillé de maintenir le moniteur visible pendant l'enregistrement. Si vous constatez ce symptôme, vous devez exécuter l'outil d'activation. Pour des informations sur l'activation d'une application fondée sur Eclipse, consultez la description de l'onglet Plateformes Eclipse. Notez que Functional Tester ne peut pas tester le shell Eclipse dans lequel il s'exécute lui-même (celui dans lequel la perspective Functional Tester est chargée). Si la perspective Functional Tester est chargée et que vous la fermez, vous devez quand même fermer et redémarrer le shell Eclipse lui-même avant d'effectuer des tests.

Vous pouvez tester une instance du shell Eclipse exécutée depuis la même installation que l'instance dans laquelle Functional Tester est chargé, à condition que les deux instances utilisent des espaces de travail distincts. Vous pouvez spécifier l'espace de travail à utiliser au moyen du paramètre -data de la commande eclipse.exe. Pour plus de détails, consultez la documentation d'Eclipse.

Activation dynamique des applications Windows et .Net

Aucun outil d'activation n'est prévu pour les applications Netscape 4, Windows et .Net. Leur activation est effectuée dynamiquement par Functional Tester. Durant l'enregistrement d'un script sur l'un de ces types d'applications, vous constaterez un délai de réaction au premier clic ou à la première frappe de touche (le pointeur de la souris reste figé quelque temps). Ce délai est dû à l'activation dynamique de l'application par Functional Tester.

Une fois que l'application est activée dynamiquement, elle le reste jusqu'à sa fermeture.

Si vous utilisez l'un des assistants de sélection d'objet (par exemple, pendant l'enregistrement d'un point de vérification) sur une application avant qu'elle ne soit activée dynamiquement, l'objet sélectionné n'est pas mis en évidence tout de suite. L'assistant de sélection procède d'abord à l'activation dynamique de l'application. Après quoi, le mécanisme de mise en évidence des objets sélectionnés dans l'application fonctionne normalement.

Conventions de dénomination des scripts Java

Les scripts créés dans Functional Tester, Java Scripting doivent respecter les conventions de dénomination des classes Java. Par exemple, leurs noms ne doivent pas contenir d'espace ni de caractère autre que des lettres et des chiffres. Ils ne doivent pas non plus commencer par un chiffre. Même si rien ne vous y oblige, il est de coutume de commencer un nom de classe Java par une majuscule. Les mêmes restrictions s'appliquent aux noms des méthodes (telles que les méthodes auxiliaires des points de vérification), mais la tradition veut qu'ils commencent par une minuscule. Enfin, lorsqu'un nom de classe ou de méthode est constitué de plusieurs mots accolés, il est conseillé de mettre en majuscule l'initiale de chaque mot supplémentaire. Par exemple, vous pourriez utiliser TestMenuApplication pour un nom de classe et validerMenuFichier() pour un nom de méthode.

Conventions de dénomination des scripts VB.Net

Les scripts créés dans Functional Tester, VB.NET Scripting doivent respecter les conventions de dénomination des classes VB.NET. Par exemple, leurs noms ne doivent pas contenir d'espace ni de caractère autre que des lettres et des chiffres. Ils ne doivent pas non plus commencer par un chiffre. Même si rien ne vous y oblige, il est de coutume de commencer un nom de classe VB.NET par une majuscule. Les mêmes restrictions s'appliquent aux noms des méthodes (telles que les méthodes auxiliaires des points de vérification). La tradition veut qu'ils commencent aussi par une majuscule. Enfin, lorsqu'un nom de classe ou de méthode est constitué de plusieurs mots accolés, il est conseillé de mettre en majuscule l'initiale de chaque mot supplémentaire. Par exemple, vous pourriez utiliser TestMenuApplication pour un nom de classe et ValiderMenuFichier() pour un nom de méthode.

Changement d'état d'une application pendant l'enregistrement de points de vérification

Lorsque vous mettez l'enregistreur en pause pour créer un point de vérification, sachez que si vous changez l'état de l'application de quelque manière que ce soit, votre script peut s'en trouver affecté. En effet, les actions exécutées ensuite peuvent empêcher la lecture correcte du script, car l'application n'est pas dans l'état convenant à la lecture de ces actions. Avant de créer un point de vérification, veillez à placer l'application dans l'état qui convient. Par exemple, si une série d'actions doit être exécutée dans l'interface utilisateur pour atteindre l'objet à tester avec le point de vérification, placez d'abord l'application dans un état tel que cet objet soit directement accessible. Après quoi, vous pouvez mettre l'enregistrement en pause et créer votre point de vérification.

Remarque : Parmi les techniques de sélection d'objet proposées par Functional Tester, l'une d'elles permet de sélectionner les objets difficiles à atteindre. Dans la page Sélection d'un objet de l'Assistant Points de vérification et actions, une option intitulée Sélection différée met l'enregistreur en pause pendant quelques instants pour vous laisser le temps d'atteindre et de sélectionner l'objet souhaité dans l'application. Aucune des actions exécutées pendant ce laps de temps n'est enregistrée dans le script.

Changement d'état d'une application pendant l'enregistrement d'un test géré par des données

Lorsque vous mettez l'enregistreur en pause pour créer un test géré par des données, sachez que si vous changez l'état de l'application de quelque manière que ce soit, votre script peut s'en trouver affecté. En effet, les actions exécutées ensuite peuvent empêcher la lecture correcte du script, car l'application n'est pas dans l'état convenant à la lecture de ces actions. Avant de créer un point de vérification, veillez à placer l'application dans l'état qui convient. Par exemple, si une série d'actions doit être exécutée dans l'interface utilisateur pour atteindre l'objet à tester avec le point de vérification, placez d'abord l'application dans un état tel que cet objet soit directement accessible. Après quoi, vous pouvez mettre l'enregistrement en pause et créer votre point de vérification. Vous pouvez profiter de l'état de pause de l'enregistreur pour changer le contenu de données des contrôles que vous comptez gérer par des données externes. Ainsi, les actions redondantes nécessaires à cette opération ne seront pas enregistrées dans le script.

Raccourci de sélection des objets

Voici une technique de sélection rapide. Pendant l'enregistrement, faites glisser le bouton Assistant Points de vérification et actions Bouton Assistant Points de vérification et actions de la barre d'outils Enregistrement des actions utilisateur pour sélectionner directement un objet dans l'application. Vous évitez ainsi de le sélectionner dans la page Sélection d'un objet de l'assistant. Ce dernier s'affiche dès que vous sélectionnez l'objet.

Enregistrement d'actions de défilement

Les actions de défilement sont couramment ignorées dans l'enregistrement de scripts de test d'applications Java et HTML. A la lecture, les panneaux, vues et autres listes se calent automatiquement sur les sous-éléments appropriés, rendant superflu l'enregistrement des actions de défilement. Il arrive cependant que Functional Tester les enregistre quand même lorsqu'elles sont indépendantes de l'hôte (cas des applications JFC), afin de produire un enregistrement aussi fidèle que possible des actions effectivement exécutées. Ces actions ne sont toutefois pas exploitées à la lecture et Functional Tester cale automatiquement les vues sur les éléments appropriés.

Les actions de défilement ne provoquent pas d'échec à la lecture, puisque Functional Tester cale automatiquement les vues au bon endroit. Les erreurs que peuvent entraîner ces actions (par exemple, position hors limite ou barre de défilement non visible) sont donc ignorées. Les actions de défilement provoquent assez couramment des échecs durant l'exécution de scripts prévus pour plusieurs plateformes. Le fait de les ignorer ne peut donc qu'améliorer la nature multiplateforme des scripts.

Fonction de survol

Lorsque vous enregistrez des actions dans une application HTML, vous pouvez utiliser cette fonction pour qu'à la lecture, la souris soit placée à un endroit particulier. La fonction de survol est particulièrement utile pour cliquer sur des menus ou des liens lors du test d'une application HTML. Pendant l'enregistrement, amenez le pointeur de la souris sur l'objet pour lequel vous souhaitez enregistrer un survol. Pressez puis relâchez la touche Majuscule pour enregistrer l'action de survol. L'enregistreur insère alors une méthode hover() dans le script. A la lecture, la souris pourra activer des liens et des menus simplement en passant dessus au lieu de cliquer. Vous pouvez enregistrer plusieurs actions de survol successives pour opérer une sélection dans un menu en cascade. Le moniteur d'enregistrement vous prévient par un message s'il n'y a pas d'objet à l'endroit où vous tentez d'insérer une action de survol, ou encore si l'objet choisi ne reconnaît pas cette fonction.

Agrandissement de la fenêtre de script

Pour agrandir la fenêtre d'édition d'un script (l'éditeur Java), cliquez deux fois sur l'onglet qui contient le nom de ce script. Le code est ainsi plus facile à éditer. Cliquez à nouveau deux fois sur l'onglet pour rétablir la perspective Functional Tester normale.


Retour d'informations