Cadres d'automatisation de test - Ce que vous devez savoir!

Table des matières:

Anonim

Dans ce tutoriel, vous apprendrez

  • Qu'est-ce qu'un cadre?
  • Qu'est-ce qu'un framework d'automatisation TEST?
  • Types de cadre d'automatisation
  • 1) Scripting linéaire - Enregistrement et lecture
  • 2) Le cadre d'architecture de la bibliothèque de tests.
  • 3) Le cadre de test basé sur les données.
  • 4) Le cadre de test basé sur des mots-clés ou des tableaux.
  • 5) Le cadre d'automatisation des tests hybrides.

Qu'est-ce qu'un cadre?

Au lieu de fournir une définition livresque d'un cadre, considérons un exemple.

Je suis sûr que vous avez assisté à un séminaire / conférence / conférence où les participants ont été invités à observer les directives suivantes -

  • Les participants doivent occuper leur place 5 minutes avant le début d'une conférence
  • Apportez un cahier et un stylo pour prendre des notes.
  • Lisez le résumé pour avoir une idée de l'objet de la présentation.
  • Les téléphones mobiles doivent être mis en mode silencieux
  • Utilisez les portes de sortie à l'extrémité opposée à l'orateur si vous avez besoin de quitter au milieu de la conférence.
  • Les questions seront prises à la fin de la session

Pensez-vous pouvoir organiser un séminaire SANS respecter ces directives ????

La réponse est un grand OUI! Certes, vous pouvez mener un séminaire / conférence / conférence / démonstration sans les directives ci-dessus (en fait certains d'entre nous ne les suivront pas même si elles sont posées… :-)

Mais si les directives sont suivies, il en résultera un résultat bénéfique comme une diminution de la distraction du public pendant la conférence et une meilleure rétention des participants et une meilleure compréhension du sujet.

Sur la base de ce qui précède, un cadre peut être défini comme un ensemble de lignes directrices qui, lorsqu'elles sont suivies, produisent des résultats bénéfiques.

Qu'est-ce qu'un framework d'automatisation TEST?

Un ensemble de directives telles que les normes de codage, la gestion des données de test, le traitement du référentiel d'objets, etc. pas des règles; ils ne sont pas obligatoires et vous pouvez toujours créer des scripts sans suivre les instructions. Mais vous manquerez les avantages d'avoir un Framework.

Types de cadre d'automatisation

1) Scripting linéaire
2) Le cadre d'architecture de bibliothèque de test.
3) Le cadre de test basé sur les données.
4) Le cadre de test basé sur des mots-clés ou des tableaux.
5) Le cadre d'automatisation des tests hybrides.

Regardons-les en détail -

1) Scripting linéaire - Enregistrement et lecture

C'est le plus simple de tous les Frameworks et également connu sous le nom de "Record & Playback" . Dans ce Framework, Tester enregistre manuellement chaque étape (navigation et entrées utilisateur), insère des points de contrôle (étapes de validation) au premier tour. Il joue ensuite le script enregistré dans les tours suivants.

Ex: envisagez de vous connecter à l'application de réservation de vol et de vérifier si l'application s'est chargée lors de la connexion réussie. Ici, le testeur enregistrera simplement les étapes et ajoutera des étapes de validation.

SystemUtil.Run "flight4a.exe", "", "", "ouvrir"Boîte de dialogue ("Connexion"). WinEdit ("Nom de l'agent:"). Définissez "Guru99"Boîte de dialogue ("Connexion"). WinEdit ("Mot de passe:"). Définissez "Mercury"Boîte de dialogue ("Connexion"). WinButton ("OK"). Cliquez sur'Vérifier que la fenêtre de réservation de vol s'est chargée après une connexion réussieFenêtre («Réservation de vol»). Vérifiez CheckPoint («Réservation de vol»)

Avantages

  • Le moyen le plus rapide de générer un script
  • Expertise en automatisation non requise
  • Le moyen le plus simple d'apprendre les fonctionnalités de l'outil de test

Désavantages

  • Peu de réutilisation des scripts
  • Les données de test sont codées en dur dans le script
  • Cauchemar de maintenance

2) Le cadre d'architecture de la bibliothèque de tests.

Il est également connu sous le nom de "Script structuré" ou "Décomposition fonctionnelle".

Dans ce Framework, les scripts de test sont initialement enregistrés par la méthode "Record & Playback". Plus tard, les tâches courantes à l'intérieur des scripts sont identifiées et regroupées en fonctions. Ces fonctions sont appelées par le script de test principal appelé Driver de différentes manières pour créer des cas de test.

Ex: En utilisant le même exemple que ci-dessus, la fonction de connexion à la réservation de vol ressemblera à.

Connexion de fonction ()SystemUtil.Run "flight4a.exe", "", "", "ouvrir"Boîte de dialogue ("Connexion"). WinEdit ("Nom de l'agent:"). Définissez "Guru99"Boîte de dialogue ("Connexion"). WinEdit ("Mot de passe:"). Définissez "Mercury"Boîte de dialogue ("Connexion"). WinButton ("OK"). Cliquez surFonction de fin

Maintenant, vous allez appeler cette fonction dans le script principal comme suit

Connexion d'appel ()---------------------------Autres appels de fonction / étapes de test.---------------------------

Avantages

  • Un niveau plus élevé de réutilisation du code est atteint dans les scripts structurés par rapport à "Enregistrer et lire"
  • Les scripts d'automatisation sont moins coûteux à développer en raison d'une plus grande réutilisation du code
  • Maintenance des scripts simplifiée

Désavantages

  • Une expertise technique est nécessaire pour écrire des scripts à l'aide de Test Library Framework.
  • Il faut plus de temps pour planifier et préparer les scripts de test.
  • Les données de test sont codées en dur dans les scripts

3) Le cadre de test basé sur les données.

Dans ce cadre, alors que la logique du scénario de test réside dans les scripts de test, les données de test sont séparées et conservées en dehors des scripts de test. Les données de test sont lues à partir des fichiers externes (fichiers Excel, fichiers texte, fichiers CSV, sources ODBC, objets DAO, objets ADO) et sont chargées dans les variables à l'intérieur du script de test. Les variables sont utilisées à la fois pour les valeurs d'entrée et pour les valeurs de vérification. Les scripts de test eux-mêmes sont préparés à l'aide de scripts linéaires ou de Test Library Framework.

Ex: Le développement du script de connexion de réservation de vol à l'aide de cette méthode impliquera deux étapes.

Étape 1) Créez un fichier de données de test qui peut être Excel, CSV ou toute autre source de base de données.

Nom d'agent

Mot de passe

Jimmy

Mercure

Tina

MERCURE

Facture

Mercure

Étape 2) Développez le script de test et faites des références à votre source de données de test.

SystemUtil.Run "flight4a.exe", "", "", "ouvrir"Boîte de dialogue ("Connexion"). WinEdit ("Nom de l'agent:"). Définir DataTable ("Nom de l'agent", dtGlobalSheet)Boîte de dialogue ("Connexion"). WinEdit ("Mot de passe:"). Définir DataTable ("Mot de passe", dtGlobalSheet)Boîte de dialogue ("Connexion"). WinButton ("OK"). Cliquez sur'Vérifier que la fenêtre de réservation de vol s'est chargéeFenêtre («Réservation de vol»). Vérifiez CheckPoint («Réservation de vol»)** Remarque "dtGlobalSheet" est la feuille Excel par défaut fournie par QTP.

Avantages

  • Les modifications apportées aux scripts de test n'affectent pas les données de test
  • Les cas de test peuvent être exécutés avec plusieurs ensembles de données
  • Une variété de scénarios de test peut être exécutée en faisant simplement varier les données de test dans le fichier de données externe

Désavantages

  • Plus de temps est nécessaire pour planifier et préparer les scripts de test et les données de test

4) Le cadre de test basé sur des mots-clés ou des tableaux.

L'infrastructure basée sur les mots-clés ou les tables nécessite le développement de tables de données et de mots-clés, indépendamment de l'outil d'automatisation de test utilisé pour les exécuter. Les tests peuvent être conçus avec ou sans l'application. Dans un test piloté par mot-clé, la fonctionnalité de l'application en cours de test est documentée dans un tableau ainsi que dans des instructions pas à pas pour chaque test.

Il existe 3 composants de base d'un framework basé sur les mots-clés, à savoir. Mot-clé, carte d'application, fonction de composant.

Qu'est-ce qu'un mot-clé?

Le mot-clé est une action qui peut être effectuée sur un composant GUI. Ex . Pour la zone de texte du composant GUI, certains mots clés (action) seraient InputText, VerifyValue, VerifyProperty, etc.

Qu'est-ce que la carte d'application?

Un mappage d'application fournit des références nommées pour les composants de l'interface graphique. Les cartes d'application ne sont rien d'autre qu'un " référentiel d'objets "

Qu'est-ce que la fonction de composant?

Les fonctions de composant sont les fonctions qui manipulent ou interrogent activement le composant GUI. Un exemple de fonction serait de cliquer sur le bouton Web avec toute la gestion des erreurs, de saisir des données dans un Web Edit avec toute la gestion des erreurs. Les fonctions des composants peuvent être dépendantes ou indépendantes de l'application.

Ex : Pour comprendre la vue par mot-clé, prenons le même exemple. Il implique 2 étapes

Étape 1 : Création d'une table de données (différente de la table de données de test créée dans Data Driven Framework). Cette table de données contient l'action à effectuer sur les objets GUI et les arguments correspondants le cas échéant. Chaque ligne représente une étape de test.

Objet

(Application MAP)

action

(MOTS CLÉS)

Argument

WinEdit (nom de l'agent)
Ensemble
Guru99
WinEdit (mot de passe)
Ensemble
Mercure
WinButton (OK)
Cliquez sur
Fenêtre (réservation de vol)
Vérifier
Existe

Étape 2 : Écriture du code sous la forme de fonctions de composant.

Une fois que vous avez créé votre (vos) table (s) de données, il vous suffit d'écrire un programme ou un ensemble de scripts qui lit à chaque étape, exécute l'étape en fonction du mot-clé contenu dans le champ Action, effectue une vérification des erreurs et enregistre toutes les informations pertinentes. Ce programme ou ensemble de scripts ressemblerait au pseudo code ci-dessous:

Fonction principale (){Appelez ConnectTable (Nom de la table) {// Appel de la fonction pour vous connecter à la table.while (Appel de TableParser ()! = -1) // Fonction d'appel pour l'analyse et l'extraction des valeurs de la table.{Transmettez les valeurs aux fonctions COMPONENT appropriées, comme Set (Nom de l'objet, Argument) ex.Set (Nom de l'agent, Guru99).}}Appelez CloseConnection () // Fonction de fermeture de la connexion une fois que toutes les opérations ont été effectuées.} // Fin de la main

C'est tout au framework basé sur les mots-clés.

L'avantage de Keyword Driven Framework est que les mots-clés sont réutilisables. Pour comprendre cela, pensez à vérifier l'opération de connexion pour un site Web, dites YAHOO MAIL. Le tableau ressemblera à ceci -

Objet (PLAN D'APPLICATION) Action (MOT-CLÉ) Argument
WebEdit (nom d'utilisateur) Ensemble Cette adresse e-mail est protégée du spam. Vous devez activer JavaScript pour le visualiser.
WebEdit (mot de passe) Ensemble xxxxx
Bouton Web (OK) Cliquez sur
Fenêtre (Yahoo Mail) Vérifier Charges

Si vous observez dans ce cas, le jeu de mots-clés, cliquez, vérifiez reste le même pour lequel les fonctions des composants correspondants sont déjà développées. Tout ce que vous avez à faire est de changer le mappage d'application (référentiel d'objets) de la réservation de vol antérieure à Yahoo Mail, avec un changement dans les valeurs des arguments et le même script fonctionnera!

Avantages

  • Fournit une réutilisabilité élevée du code
  • Outil de test indépendant
  • Indépendamment de l'application en cours de test, le même script fonctionne pour AUT (avec certaines limitations)
  • Les tests peuvent être conçus avec ou sans AUT

Désavantages

  • L'investissement initial étant assez élevé, les avantages ne peuvent être réalisés que si l'application est considérablement volumineuse et que les scripts de test doivent être maintenus pendant plusieurs années.
  • Une grande expertise en automatisation est requise pour créer le framework basé sur les mots-clés.

REMARQUE: même si Micro Focus UFT se présente comme KeyWord Driven Framework, vous ne pouvez pas obtenir une optimisation complète des outils de test et des applications à l'aide de HP UFT.

5) Le cadre d'automatisation des tests hybrides.

Comme son nom l'indique, ce cadre est la combinaison d'un ou plusieurs cadres discutés ci-dessus tirant de leurs forces et essayant d'atténuer leurs faiblesses. Ce cadre d'automatisation de test hybride est ce vers quoi la plupart des frameworks évoluent au fil du temps et de multiples projets. L'industrie maximale utilise Keyword Framework dans une combinaison de méthode de décomposition de fonction.

PS: D'autres cadres qui méritent d'être mentionnés sont

Tester le cadre de modularité

Dans ce cadre, une tâche commune dans le script de test est regroupée sous forme de modules.

Ex : l'utilisation d'actions dans l'utilisation de QTP peut créer des scripts Modualr

Exemple de script pour la connexion

SystemUtil.Run "flight4a.exe", "", "", "ouvrir"Boîte de dialogue ("Connexion"). WinEdit ("Nom de l'agent:"). Définissez "Guru99"Boîte de dialogue ("Connexion"). WinEdit ("Mot de passe:"). Définissez "Mercury"Boîte de dialogue ("Connexion"). WinButton ("OK"). Cliquez sur'Fin du script

Vous pouvez maintenant appeler cette action dans le script principal comme suit -

RunAction ("Login [Argument]", oneIteration)

Test des processus métier (BPT)

Ces frameworks divisent les grands processus métier en composants qui peuvent être réutilisés plusieurs fois dans les mêmes scripts de test ou dans des scripts différents. Par exemple, le processus commercial de réservation d'un vol est divisé en composants tels que la connexion, la recherche de vols, la réservation, le paiement et la déconnexion qui peuvent être réutilisés dans le même processus commercial ou différents processus. En outre, BPT facilite une coordination plus étroite entre les PME et les ingénieurs en automatisation.