Fermer

février 27, 2024

Paramétrez vos scénarios de tests d’assurance qualité automatisés avec Cucumber / Blogs / Perficient

Paramétrez vos scénarios de tests d’assurance qualité automatisés avec Cucumber / Blogs / Perficient


Création de scripts de tests QA automatisés dans Concombre offre une faible barrière d’entrée pour votre équipe d’assurance qualité. Qu’est-ce que le concombre ? Le concombre est Développement axé sur le comportement outil qui utilise Cornichon pour la syntaxe du scénario. Gherkin est un langage simple et non technique conçu pour une maintenance et une lisibilité faciles. Gherkin peut facilement s’intégrer à des outils open source tels que Sélénium, Appius pour l’automatisation de l’assurance qualité.

Nous pouvons étendre encore plus la syntaxe Gherkin dans les scripts de test Cucumber avec des paramètres. La paramétrisation offre la possibilité d’exécuter vos scénarios en utilisant différentes données de test, d’écrire moins de code et de le réutiliser à plusieurs endroits. Dans cet article, nous apprendrons comment utiliser les paramètres pour créer des scénarios de test robustes.

Avant d’approfondir le paramétrage, apprenons quelques mots-clés !

Mots-clés utiles :

Scénario: Groupe d’étapes qui contient les actions et validations de l’utilisateur.

Étape de test: Représente une action ou une validation utilisateur unique définie dans un langage simple et commence par des mots-clés tels que Donné, Quand, Alors, Et et Mais.

Définition de l’étape: Une méthode liée à chaque étape de test dans un scénario. La définition d’une étape peut également être liée à plusieurs étapes de test en suivant les techniques de paramétrage.

Aperçu du scénario : Mot clé utilisé pour les scénarios contenant des paramètres avec des valeurs définies. Utiliser Aperçu du scénario pour activer les paramètres au lieu du mot-clé Scénario. Les paramètres sont définis comme des variables à l’intérieur . Les variables sont définies via le Exemples mot-clé.

Exemples: Mot-clé pour définir les variables d’un aperçu de scénario. Identifiants de connexion IE pour les comptes de test.

Scénarios de paramétrage :

Scénario 1:

Scénario : Vérifier que l’utilisateur peut se connecter à la page de connexion 1

Étant donné que je suis dans LoginPage1

Lorsque j’entre le nom d’utilisateur et le mot de passe

Ensuite, je vérifie que l’utilisateur est connecté à la page d’accueil

Et je vérifie que l’onglet « accueil » est affiché

Et je vérifie le titre de la page

Scénario 2 :

Scénario : Vérifiez que l’utilisateur peut se connecter à LoginPage2

Étant donné que je suis dans LoginPage2

Lorsque j’entre le nom d’utilisateur et le mot de passe

Ensuite, je vérifie que l’utilisateur est connecté à la page d’accueil

Et je vérifie que l’onglet « utilisateur » est affiché

Et je vérifie le titre de la page et enregistre le titre

Paramétrer avec des valeurs prédéfinies

Les paramètres qui ne peuvent autoriser que des valeurs fortement typées sont considérés comme des valeurs prédéfinies.

Examinons Donné déclarations de l’exemple ci-dessus – Scénario 1 : « Je suis dans la page de connexion 1 » et scénario 2 : « Je suis dans LoginPage2. » Les étapes sont les mêmes sauf pour ConnexionPage1 et ConnexionPage2 valeurs. Nous allons créer une définition d’étape unique pour les deux étapes.

@Given(“^I am in (LoginPage1|LoginPage2)$”)

Public void iAmInLoginPage(String parameter1){

//code here

}

Note: Les définitions d’étape paramétrées commenceront par ^ et se termine par $

Paramétrer avec des valeurs non définies

Les paramètres avec des valeurs non définies sont des variables qui peuvent avoir différentes valeurs d’entrée.

Nous devons tester les scénarios ci-dessus avec différentes informations de connexion, qui peuvent changer souvent. Ceci peut être réalisé en mettant à jour les données de test dans le scénario, et non l’intégralité du script lié au scénario. L’étape de test « Quand j’entre le nom d’utilisateur et le mot de passe » est le candidat idéal pour notre cas d’utilisation. Utilisons le Aperçu du scénario mot-clé et transmettez les valeurs paramétrées comme Exemples. Nous utiliserons pour transmettre le nom d’utilisateur et le mot de passe à notre Quand clause.

Aperçus du scénario :

Scénario 1:

Aperçu du scénario : Vérifier que l’utilisateur peut se connecter à LoginPage1

Étant donné que je suis dans LoginPage1

Lorsque j’entre et

Ensuite, je vérifie que l’utilisateur est connecté à HomePage1

Et je vérifie que l’onglet « accueil » est affiché

Et je vérifie le titre de la page et enregistre le titre

Exemples:

|nom d’utilisateur|mot de passe|

|utilisateur1|mot de passe1|

|utilisateur2|mot de passe2|

Note: Le scénario ci-dessus sera exécuté avec des itérations pour utilisateur1 et utilisateur2.

Les définitions d’étape doivent utiliser des expressions régulières pour transmettre des valeurs au scénario, comme indiqué ci-dessous.

@When(“^I enter (.*) and (.*)$”)

Public void iEnterUserNameAndPassword(String username,String password){

//code here

}

Paramétrer avec des valeurs fixes/par défaut :

Les valeurs par défaut sont des paramètres définis lors de l’étape de test du scénario. Nous n’utilisons pas de noms de paramètres, nous transmettons directement les valeurs des étapes de test.

Examinons l’étape de test Scénario 1 : « Et je vérifie que l’onglet « accueil » est affiché » et scénario 2 : « Et je vérifie que l’onglet « utilisateur » est affiché. » Les deux étapes sont les mêmes sauf pour les valeurs maison et utilisateur. Même s’il ne s’agit pas de noms de paramètres, ce sont des valeurs utilisées directement dans nos étapes de test. Cependant, nous pouvons toujours créer une définition en une seule étape et la lier aux deux étapes de test.

@And(“I verify that {String} tab is displayed”)

Public void iVerifyGivenTanIsDisplayed(String tabName){

//code here

}

Paramétrer les valeurs nulles :

Il y a des moments où un paramètre particulier peut ou ne peut pas avoir de valeur dans nos scénarios. C’est ici que nous utiliserions les paramètres Null Value.

Faisons les derniers pas « Et je vérifie le titre de la page » et « Et je vérifie le titre de la page et enregistre le titre. » Nous pouvons créer un paramètre pour accepter  » et enregistrez le titre «  ou nul. Ceci peut être réalisé avec le caractère d’expression régulière ? et assurez-vous que le paramètre a un espace de début.

@Then(“^I verify the page title( and save the title)?$”)

Public void iVerifyPageTitle(String saveTitle){

//codehere

If(saveTitle != null){

//code here

}

}

Les paramètres du scénario de test permettent la réutilisation des étapes de test dans différents scénarios. Votre code sera ainsi plus lisible et portable. Le paramétrage diminue nos efforts de script en liant les définitions d’étapes à plusieurs étapes de test. L’adoption de paramètres améliore la qualité du code, ce qui permettra moins d’erreurs, des mises à jour faciles et un meilleur code global.

Vous allez adorer l’efficacité du code offerte par les paramètres ! Pourquoi ne pas leur donner une chance.

Pour plus d’informations sur Perficient Solutions mobiles compétence, s’abonner sur notre blog ou contact notre équipe de solutions mobiles dès aujourd’hui !






Source link