Lorsque vous enregistrez un script sur votre application HTML, faites-la démarrer par Functional Tester pendant l'enregistrement. Functional Tester ouvre la page HTML que vous spécifiez dans votre navigateur par défaut ou dans un navigateur spécifique.
Lorsque vous enregistrez un script de test sur une application HTML, vous pouvez inclure une action de survol (hover) d'un menu déroulant dont l'ouverture est déclenchée par le simple passage de la souris. Ce type de menu déroulant est implémenté au moyen de balises DIV. Pour enregistrer une action de survol d'un menu déroulant et déclencher l'ouverture du sous-menu, placez le pointeur sur le texte de l'élément de menu souhaité et appuyez sur la touche Majuscule. Au moment où vous appuyez sur cette touche, veillez à ce que le pointeur se trouve sur le texte de l'élément de menu, et non sur l'espace à droite du texte.
Deux versions de la méthode deleteCookies sont disponibles. L'une supprime tous les cookies pour le profil ou l'utilisateur courant, tandis que l'autre supprime les cookies dans un chemin ou un domaine spécifique, pour le profil ou l'utilisateur courant. Pour plus d'informations, voir la section "Référence des API de la documentation de Functional Tester" (sélectionnez le package com.rational.test.ft.object.interfaces, puis l'interface IBrowserObject).
Comme les sélections dans les menus du navigateur sont enregistrées d'après leurs coordonnées à l'écran, la lecture des scripts peut manquer de fiabilité si la taille ou la position de la fenêtre du navigateur change entre l'enregistrement et la lecture. De même, les menus sont différents d'un navigateur à un autre, ce qui peut aussi provoquer des incidents de lecture des scripts.
Si vous réduisez le navigateur à une fenêtre n'occupant qu'une partie de l'écran, Functional Tester ne fait pas défiler son contenu pour le caler automatiquement sur l'applet.
La position de la zone Adresse d'un navigateur est déterminée par des coordonnées d'écran qui peuvent changer si vous modifiez la taille ou la position de la fenêtre du navigateur. Si, durant l'enregistrement d'un script, vous spécifiez une URL en cliquant dans la zone Adresse et en tapant la nouvelle URL, vous risquez un échec à la lecture du script. Pour changer d'URL durant l'enregistrement, insérez un clic sur le navigateur (Browser_htmlBrowser) dans votre script .
Si vous utilisez la propriété .size pour tester les éléments INPUT et que l'attribut correspondant n'est pas spécifié dans un élément INPUT particulier de l'application, la valeur par défaut renvoyée par Internet Explorer est 20 et celle renvoyée par Netscape est 0 (zéro).
Si vous prévoyez d'utiliser votre script avec plusieurs types de navigateurs et de plateformes, évitez d'utiliser des boutons de barre d'outils qui ne sont propres qu'à un seul type de navigateur. Les boutons de barre d'outils suivants sont communs aux deux grandes marques de navigateurs (ils sont cités en anglais car c'est ainsi qu'ils sont désignés dans le code ; d'autre part, ils sont traduits différemment dans les versions françaises des deux produits) :
Le bouton Close (Fermer) est disponible tant dans Internet Explorer que dans Netscape. Lorsque vous enregistrez un script prévu pour plusieurs navigateurs, évitez d'utiliser d'autres techniques pour quitter le navigateur. Par exemple, la combinaison de touches Ctrl+Q (raccourci de la commande Quitter dans la version française) ne fonctionne que dans Netscape ; elle n'existe pas dans Internet Explorer. Si vous utilisez cette combinaison de touches lors de l'enregistrement d'un script avec Netscape, la lecture de ce script échouera avec Internet Explorer.
La lecture du script de test des applications HTML échoue si l'état prêt de l'objet navigateur ne correspond pas à 4. Vérifiez que l'état du navigateur est 4 pendant la lecture d'un script. Vous pouvez effectuer cette opération en modifiant le script de test manuellement, comme indiqué dans les exemples.
Script pour vérifier l'état du navigateur dans Java : logInfo("Ready State #: "+browser_htmlBrowser().getProperty(".readyState").toString());
Script pour vérifier l'état du navigateur dans .Net : LogInfo("Ready State #: " & Browser_HtmlBrowser().GetProperty(".readyState").ToString)
Comme Netscape met plus de temps à démarrer qu'Internet Explorer, utilisez la méthode waitForExistence pour attendre l'apparition du navigateur lorsque vous enregistrez un script prévu les deux types de navigateurs. Par exemple :
Pour gérer les menus contextuels, Netscape ignore un clic sur un lien lorsqu'il suit immédiatement un clic à l'aide du bouton droit. Si cette combinaison s'avère nécessaire dans votre script, cliquez à l'aide du bouton droit sur le lien, cliquez sur un espace vide du document, puis cliquez sur le lien. Bien que cette suite d'opérations ne soit requise que dans Netscape, il est bon de l'appliquer aussi dans Internet Explorer.
Dans Netscape, le fait de maintenir la touche Ctrl enfoncée et de cliquer sur un lien ouvre la page correspondante dans une autre instance du navigateur (nouvelle fenêtre). Dans Internet Explorer, cette combinaison revient au même qu'un clic normal. Par conséquent, évitez-la si vous comptez tester votre application avec les deux navigateurs, car le script sera lu différemment dans les deux cas.
Dans Netscape, lorsque vous cliquez à l'aide du bouton droit sur un élément dans une boîte à liste, puis que vous cliquez sur un autre élément (ou le même), ce dernier clic est ignoré. Si cette combinaison s'avère nécessaire dans votre script, cliquez à l'aide du bouton droit sur l'élément, cliquez sur un espace vide du document, puis cliquez sur l'élément dans la liste.
Des erreurs dans la code HTML peuvent conduire à une interprétation différente de la hiérarchie du modèle DOM HTML suivant le navigateur utilisé. Un script s'exécutant correctement avec un navigateur peut échouer avec un autre. Enregistrez un script avec chaque navigateur et comparez les mappes d'objets de test résultantes. Si les mappes présentent des hiérarchies différentes, exécutez un utilitaire tel que HTML Tidy. Si des erreurs sont signalées, il est possible qu'elles provoquent une interprétation différente du modèle objet, ce qui explique les hiérarchies différentes. HTML Tidy est disponible sur le site du World Wide Web Consortium, www.w3.org.
Lors de l'enregistrement d'un script avec Netscape, des boîtes de message peuvent s'afficher en incrustation (boîtes de dialogue propres à l'interface utilisateur du navigateur, à ne pas confondre avec les "pop-ups" générés par les sites consultés). Ce peut être le cas, par exemple, de messages relatifs au chiffrement ou à un changement de domaine de sécurité. Si vous enregistrez votre script en vue de l'utiliser avec différents navigateurs, l'inclusion de ces boîtes de message dans le script est à éviter, car elles n'apparaissent généralement pas dans Internet Explorer. Pour éviter cette situation :
Vous pouvez modifier votre script pour faire face à l'affichage de ce type de boîtes de message, mais cela peut compliquer le code. Pour plus d'informations, voir la rubrique Extension des fonctionnalités de Functional Tester.
Lorsque vous enregistrez un script compatible avec différents navigateurs (un script compatible entre tous les navigateurs pris en charge par Functional Tester), évitez d'enregistrer les boîtes de message en incrustation. Vous pouvez toutefois les enregistrer si vous ne prévoyez pas d'utiliser votre script pour tester l'application avec plusieurs navigateurs.
Sous Windows, Functional Tester reconnaît les boîtes de dialogue de connexion, de téléchargement de fichier, d'avertissements relatives aux certificats ou à la sécurité, de sélection de fichier (ouverture/enregistrement) et d'impression. Ces boîtes de dialogue sont propres à l'interface utilisateur de chaque navigateur et, pour cette raison, elles ne doivent pas être enregistrées dans un script prévu pour le test avec plusieurs marques et versions de navigateurs. Cependant, dans la plupart des cas, la boîte de dialogue de connexion (Login) est utilisable avec différents navigateurs.
Lorsque vous configurez une application en vue de la tester avec Functional Tester, ce dernier ajoute son nom à l'Outil de configuration d'application. Si vous devez tester un grand nombre d'URL différentes, la liste Applications peut devenir très longue. Si vous ne souhaitez pas ajouter une URL à cette liste, vous pouvez la tester en utilisant la commande startBrowser dans un script vide.
startBrowser ("url");
Functional Tester prend en charge les tests d'applications HTML Microsoft (MSHTA). Avant de tester une telle application, vous devez la configurer en exécutant mshta.exe. Pour configurer chaque application MSHTA que vous comptez tester :
Pour plus d'informations, voir Configuration d'applications en vue de leur test.
Si TestManager est installé sur votre système, utilisez-le pour tester des applications HTML à distance sur d'autres ordinateurs Linux. Pour plus d'informations, reportez-vous à la rubrique sur l'ordinateur local et l'ordinateur de l'agent.
Si vous recevez une erreur relative au plug-in Java lorsque vous testez des applications HTML ou que vous tentez de démarrer le Comparateur de point de vérification en cliquant sur le lien Afficher les résultats dans le journal HTML, vérifiez que le plug-in Java de votre navigateur est configuré correctement. Pour connaître les instructions à suivre, reportez-vous à la rubrique relative à l'activation du plug-in Java d'un navigateur.
Remarque sur l'intégration de TestManager : Functional Tester est intégré à Rational TestManager version 7.0.1.2. Si vous possédez la version 7.0.1.2 de TestManager, vous pouvez utiliser les fonctions intégrées de Functional Tester et TestManager. Reportez-vous à la rubrique Présentation des intégrations de Functional Tester car elle contient des informations importantes sur l'utilisation combinée des produits.