Fermer

mai 26, 2021

Hacks pour maîtriser votre suite de tests automatisés


Trouver un moyen de maîtriser votre suite de tests automatisés occupe probablement chaque testeur non seulement pendant les heures de travail. Pourtant, est-ce que cela doit être si difficile?

Ce billet de blog présente une sélection de techniques d'enregistrement de test que chaque testeur devrait envisager dans le but de construire une suite de tests automatisés plus stable, fiable et facilement maintenable.

Obtenir un outil est souvent la voie que les organisations choisissent pour leurs équipes. Cependant, l'outillage ne résout pas automatiquement les problèmes à l'heure actuelle. Les personnes qui utilisent les outils le font. Le rôle de l'outillage au sein d'une organisation est d'aider les gens à trouver une manière plus intelligente de faire avancer les choses, soutient l'auteur d'un article de Forbes sur les aspects critiques à prendre en compte avant d'adopter une nouvelle technologie .

les choses plus faciles pour vous, surtout si vous venez de commencer à créer votre suite de tests automatisés avec Test Studio, j'ai préparé une sélection de techniques de test que nos ingénieurs de test recommandent de toujours prendre en compte lors de la création de tests automatisés.

Spoiler Alert! Continuez à lire car il pourrait y avoir des informations révélatrices plus loin dans l'article.

Appelez cela basique, mais maîtriser les techniques fondamentales de l'enregistrement de test est le point de départ. Vous savez déjà tout sur l'enregistrement? Eh bien, connaître quelques hacks de plus ne peut que vous aider à maîtriser vos compétences en automatisation de test.

N'oubliez pas que tout cela consistera à créer les tests les plus intelligents, pas les plus rapides. Ajouter le timing approprié et les check-ins nécessaires en cours de route, par exemple, pourrait ralentir un peu vos tests mais sera payant à long terme en les rendant plus stables et plus faciles à maintenir.

J'ai promis des hacks, et c'est parti!

1. Ajouter les bonnes vérifications au bon moment

Maîtriser l'art d'ajouter des vérifications est le premier principe derrière des suites de tests automatisés stables et fiables. Hormis le fait que nous voyons toujours des tests sans une seule vérification ajoutée, ce qui est presque la pire chose qui puisse vous arriver en tant que testeur (car cela conduit à une stratégie très fragile), il est essentiel de comprendre quand dans votre test pour ajouter des vérifications et quelle vérification choisir dans un scénario particulier.

Commencez par avoir un objectif clair. Pour les besoins de la démonstration, disons que nous voulons créer des tests que nous n'aurions plus jamais à enregistrer ou – pire encore – pour revenir au test manuel de la fonctionnalité cible.

Capturez des actions dans le cadre de votre test avec l'élément Surligneur de l'enregistreur Test Studio. C'est ici que vous ajouterez vos étapes de vérification rapide à partir de. L'enregistreur vous donne accès à un ensemble prédéfini de vérifications rapides qui sont là dans un but précis.

Ce sont les vérifications fonctionnelles les plus courantes. S'ils échouent, le test échoue. C'est ainsi que nous obtenons une indication lorsque le test détecte des problèmes au niveau fonctionnel et peut prendre les mesures appropriées – enquêter plus avant, enregistrer un bogue ou détecter un problème de script à corriger.

Si vous avez besoin de plus vérifications avancées comme la comparaison d'images, les validations de style, etc., la partie Outils d'enregistrement avancés de l'enregistreur est l'endroit où les trouver.

Outre l'enregistreur de test, vous pourrez ajouter d'autres étapes de vérification plus tard dans votre test à partir du Step Builder. C'est là que vous trouverez toutes sortes d'étapes de vérification non fonctionnelles (!) Ou cosmétiques – par exemple pour vérifier si un élément a la bonne couleur, etc.

Cela peut arriver même si vous n'avez pas l'application sous le test a commencé. Sélectionnez simplement un élément déjà enregistré dans le référentiel d'éléments et ajoutez-y une action ou une vérification.

Une autre règle importante est d'envisager d'ajouter des vérifications lorsqu'un certain résultat est attendu. Lorsque vous changez de page ou passez d'une page à l'autre, vous devez généralement être cohérent dans l'ajout de vérifications pour vous assurer que le contenu correct a été chargé dans l'interface utilisateur.

Nous avons dit au début que vous commenciez par ajouter des vérifications fonctionnelles. pendant l'enregistrement mais ont toujours la possibilité d'ajouter des vérifications plus tard. Imaginez avoir un test très long et pourtant vous devez revenir en arrière et ajouter d'autres étapes de vérification. Dans de tels cas, une fonctionnalité utile dont vous pouvez tirer parti est "Exécuter ici". Il vous permet d'exécuter le test jusqu'à une étape de test sélectionnée et d'ajouter des étapes supplémentaires là où c'est nécessaire.

2. Créer efficacement des étapes de test

Bien que Test Recorder vous permette de créer facilement des tests basés sur une interaction visuelle avec l'interface utilisateur de votre application, il est important de savoir comment vous pouvez améliorer vos tests.

Les informations auxquelles vous avez accès dans L'enregistreur est un instantané de l'état actuel de l'arborescence DOM de la page testée et de tous ses éléments. Par exemple, lorsque vous ajoutez des étapes de vérification, vous pouvez voir les attributs de l'élément que vous allez vérifier avec ses valeurs.

Le Step Builder qui est accessible dans Test Studio, d'autre part, vous offre un tout nouveau groupe de fonctionnalités puissantes. Il vous permet de créer des étapes de test supplémentaires lorsque vous n’avez pas nécessairement besoin d’être en mode enregistrement.

Examinons les options disponibles pour créer une étape. Il existe une différence significative entre la fonction d'étape de construction dans l'enregistreur et le générateur d'étape. Encore une fois, il est important d'avoir un objectif clair pour ce que vous voulez réaliser et comment vous allez y parvenir.

Après une mise à jour UX / UI majeure récente de Test Studio, toutes les Étapes communes du Step Builder est disponible dans les Advanced Recording Tools à portée de main pendant l'enregistrement. Cependant, pour modifier vos tests pour répondre à des scénarios spécifiques, il est recommandé de vous familiariser avec le Step Builder.

Prenons un exemple.

Vous pouvez créer une étape à partir d'un élément déjà enregistré. À un moment donné, nous avons capturé ces éléments pendant l’enregistrement et ils ont été ajoutés au Element Repository . Sélectionnez un élément dans ce référentiel et vous pouvez ajouter d'autres actions ou vérifications à partir du générateur d'étapes.

Vous pouvez utiliser le générateur d'étapes lorsque vous souhaitez ajouter une étape qui n'est pas liée à un élément, c'est-à-dire. logique conditionnelle. N'oubliez pas que les étapes if / else ou while / loop reposeront sur des vérifications. Il y a d'autres étapes utiles à ajouter – par exemple, effacer le cache du navigateur, capturer le navigateur, ajouter des délais d'exécution ou vérifier les erreurs JS. Tous ces éléments sont disponibles dans l'onglet Étapes communes du générateur d'étapes.

Prenons un autre exemple.

Vous savez où vous avez besoin d'une étape pour un élément, mais votre test est très long. Vous ne voulez pas attendre 10 minutes jusqu'à ce que toutes les étapes soient exécutées jusqu'à ce que vous arriviez à l'élément pour lequel vous devez ajouter une étape. Vous pouvez utiliser le mode d'enregistrement «hors ligne» ou en dehors de Step Builder pour ce faire si l'élément est déjà enregistré lors d'une session d'enregistrement de test précédente.

Test as Step

Un élément essentiel du Step Builder est le ] test comme option qui est la seule technique dont vous avez besoin pour modulariser vos tests.

Vous pouvez même aller jusqu'à avoir des tests entiers composés de tests multiples comme étape. Cette fonctionnalité vous permet de créer une hiérarchie de tests parent / enfant, qui est facile à gérer et qui représente une flexibilité et une stabilité immenses de vos tests.

Voyons comment vous exécutez un test existant en une seule étape, dans un autre test. Cela vous permet de réutiliser les étapes de test automatisées courantes dans votre projet. Vous créez des projets de test facilement maintenables en créant des tests plus petits et en les utilisant comme étapes dans d'autres tests.

Tout test Web / bureau ou API peut être utilisé comme étape dans le même projet. Vous pouvez le faire sous l'onglet «Commun» du générateur d'étapes.

Pourquoi la modularisation des tests est-elle bonne pour vos tests?

Examinons le scénario suivant. Vous avez une application dans laquelle vous devez toujours vous connecter avant de faire quoi que ce soit en termes d'automatisation. Cela signifierait que vous devez intégrer le scénario de connexion dans tous vos tests, car c'est là que commence le parcours de l'utilisateur.

Imaginez maintenant que vous avez créé tous vos tests un par un, en commençant toujours par vous connecter. Si votre nom d'utilisateur ou votre mot de passe change, vous devrez passer par tous les tests où l'élément de connexion est impliqué et le changer manuellement.

Pas dans Test Studio cependant, où vous avez l'option de test comme étape. La seule chose que vous devez faire est d'enregistrer deux ou trois étapes simples: «saisir le nom d'utilisateur», «saisir le mot de passe» et «cliquer sur le bouton de connexion». Vous enregistrez ensuite ces deux ou trois étapes en tant que test en tant qu'étape dans Step Builder afin que vous puissiez ajouter le test unique comme étape tout au long de vos tests là où vous en avez besoin.

N'oubliez pas d'ajouter une étape de vérification après avoir cliqué sur le bouton de connexion. , pour vérifier que vous êtes bien connecté. Cela peut être une étape pour vérifier que le message de post-connexion / de bienvenue est visible ou tout ce que fait votre application pour indiquer une connexion réussie.

Si votre nom d'utilisateur ou votre mot de passe change, vous les mettez à jour une fois dans le test comme étape et les modifications s'appliqueront automatiquement à tous les tests qui réutilisent ce test comme étape.

Quelle est la manière la plus simple d'appliquer ce scénario?

Vous commencez votre test, allez faire votre test de connexion comme étape, utilisez l'option «Run to here» et commencez à enregistrer à partir de là. Run to here vous permettra de vous connecter, d'où vous pourrez procéder à l'enregistrement de votre test.

Login est une illustration très puissante de l'avantage de réutiliser des tests existants comme étapes dans d'autres tests – le principe clé de la modularisation des tests.

3. Utilisation de BaseURL pour exécuter des tests dans plusieurs environnements

L'idée derrière l'utilisation de BaseURL nous ramène aux paramètres du projet. Les tests ne sont presque jamais effectués sur un seul environnement, et c'est l'idée derrière la mentalité de décalage gauche. Heureusement, chez Test Studio, nous voyons de plus en plus d'équipes automatiser les tests de leurs projets dans plusieurs environnements: staging, UAT ou prod.

L'effort pour configurer vos tests automatisés pour une exécution dans plusieurs environnements peut être immense, selon l'infrastructure de votre application

La définition de BaseURL dans Test Studio vous permet de réutiliser des tests déjà enregistrés pour les exécuter dans plusieurs environnements qui sont généralement disponibles sous des URL légèrement différentes mais parfois complètement différentes. La définition de votre BaseURL au niveau du projet vous aidera à exécuter les mêmes tests au cours des différentes phases du cycle de développement de votre application.

Examinons maintenant les paramètres du projet. L'une des premières choses que vous voyez dans l'onglet d'enregistrement dans les paramètres du projet est BaseURL. Le mode de comparaison ainsi que la structure BaseURL sont expliqués de manière exhaustive dans la documentation Options d'enregistrement .

BaseURL peut vous faire gagner beaucoup de temps si elle est appliquée correctement à votre projet car elle vous évite de réécrire tous vos tests depuis scratch pour les faire fonctionner avec une adresse de serveur différente.

Pourquoi le mode de comparaison est-il important?

Lorsque vous créez des tests, vous enregistrez des éléments. Ces éléments sont localisés / classés sous les pages enregistrées. La manière dont Test Studio reconnaît la page est basée sur le mode de comparaison. S'il est trop spécifique, cela peut créer des doublons. S'il recherche «FullpathandQuery» par exemple, il créera des pages et des éléments en double. Lorsque vous recherchez uniquement «Fullpath», cela ne se produira pas.

Dernières pensées

J'espère que cet article vous a aidé à mieux comprendre comment tirer le meilleur parti de Test Studio lors de la création de votre système automatisé suite de tests. Nous avons à peine touché la surface et nous nous assurerons de vous expliquer davantage les fonctionnalités d'amélioration des performances de Test Studio dans certains articles de blog à venir.

Nous aimons dire que Test Studio s'intégrera de manière transparente à vos besoins de test de logiciels automatisés en raison de sa facilité d'utilisation et ses puissantes capacités. Mais rappelez-vous ce que nous avons dit plus haut sur les personnes et les outils? Les tests doivent être guidés par des cas d'utilisation réels, et les cas d'utilisation réels sont créés et résolus par les gens et le besoin réel des gens de faire les choses plus intelligemment.

Si vous n'avez pas essayé Test Studio récemment, c'est peut-être le bon moment pour faites-le. Toutes les versions récentes ont apporté de nouveaux ajouts à ses capacités d'automatisation de test, telles que les fonctionnalités de validation OCR et PDF, les tests sans tête, la capture de storyboard de test et plus encore!

Votre essai gratuit de 30 jours vous donnera également accès à une formation en ligne gratuite à la demande et le support produit. De plus, nos experts en automatisation veilleront à vous aider avec ce dont vous avez besoin pour une évaluation réussie – que ce soit une démonstration personnalisée, une consultation ou un PoC.

Essayer maintenant

Consultez notre article récent sur " 5 façons d'accélérer vos tests de bout en bout . »




Source link