Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Apprendre Matchers Courants | Utilisation d'un Cadre d'Automatisation des Tests
Introduction aux Tests d'Automatisation QA
course content

Contenu du cours

Introduction aux Tests d'Automatisation QA

Introduction aux Tests d'Automatisation QA

1. Introduction aux Tests d'Automatisation
2. Utilisation d'un Cadre d'Automatisation des Tests
3. Automatisation du Navigateur avec Selenium
4. Introduction aux Tests d'Automatisation Intermédiaires

book
Matchers Courants

Dans ce chapitre, nous examinerons certains matchers courants qui peuvent être utilisés pour tester divers types de valeurs.

Correspondance des tableaux et des objets

Le matcher toEqual compare deux éléments à un niveau profond. Par conséquent, il est utile pour faire correspondre des structures comme un Array ou peut-être un Object :

Vérification Approfondie

La méthode toContain vérifie si le Tableau passé contient une valeur spécifique :

La méthode toContainEqual est utilisée pour les tableaux compliqués afin d'effectuer des comparaisons approfondies :

Correspondance des motifs de chaîne

La méthode toMatch est également utilisée pour faire correspondre des chaînes :

Ce matcher ne compare pas exactement les deux chaînes, mais recherche plutôt une sous-chaîne à l'intérieur de l'entrée originale. Par conséquent, l'assertion suivante réussit également :

En réalité, la méthode toMatch accepte simplement une expression régulière (RegEx) qui recherche le motif donné dans la chaîne d'entrée originale.

Une sous-chaîne, ou un texte simple, est une expression RegEx valide, donc simplement écrire World recherche le terme World dans la chaîne d'entrée, et cela correspond car "World" est une sous-chaîne de "Hello World".

Une expression régulière est simplement une séquence de caractères utilisée pour représenter un motif spécifique. Les expressions régulières sont utilisées pour rechercher efficacement des morceaux de texte qui correspondent à un motif souhaité. La plupart des langages de programmation comme Python et JavaScript ont un support intégré pour les expressions régulières, et les langages qui n'ont pas de support intégré ont des bibliothèques externes qui peuvent être installées pour ajouter un support pour les expressions régulières.

Regex suit une syntaxe spécifique, tout comme les langages de programmation. Il n'est pas nécessaire d'apprendre les expressions régulières pour progresser dans ce cours, cependant, nous pouvons regarder un exemple pour voir comment les expressions régulières peuvent être utiles en général.

Le motif /^[a-m]{5}$/ vérifie si la chaîne d'entrée a une longueur de 5 caractères et ne contient que des lettres minuscules de 'a' à 'm'.

Les expressions régulières sont assez robustes et peuvent être utilisées pour rechercher n'importe quel type de motif. Par exemple, le motif /^[^\\s@]+@[^\\s@]+\\.[^\\s@]+$/ vérifie si la chaîne d'entrée est un email valide.

Vérification de `null` et `undefined`

Pour vérifier si une valeur est null, nous ne pouvons pas utiliser les correspondances précédentes car null n'est pas un entier, une structure ou une chaîne. Dans ce cas, nous utilisons le matcher toBeNull qui n'accepte aucun argument :

JavaScript a également le mot-clé undefined. Nous pouvons vérifier si une valeur est undefined en utilisant le matcher toBeUndefined :

Il existe également un matcher pour vérifier l'opposé. Le matcher toBeDefined vérifie que la valeur cible est définie.

Vérification des valeurs booléennes et de la véracité

Pour vérifier si une valeur est True ou False, nous utilisons les méthodes toBeTruthy et toBeFasly :

Ces méthodes vérifient la « véracité » ou la « fausseté » d'une valeur. Toute valeur qui serait considérée comme True dans une condition if est une valeur Thuthy, sinon c'est une valeur Falsy.

Dans ce cas, "turthy" sera imprimé, indiquant que 10 est une valeur truthy. Au contraire, remplacer 10 par un 0, ou une chaîne vide ('') imprime "falsy".

Vérification des Exceptions

Nous pouvons également vérifier si une certaine exception a été levée par une fonction, en utilisant le matcher toThrow.

Disons que nous avons la fonction classique factorial qui lève une exception lorsqu'une entrée invalide est donnée à la fonction :

Nous pouvons utiliser le matcher toThrow pour tester si la fonction lance effectivement une Erreur / Exception en cas d'entrée invalide :

La méthode toThrow accepte un argument, qui est censé être le contenu textuel de l'exception attendue. Puisqu'elle compare le texte de l'exception lancée, le texte exact de l'exception attendue doit donc être passé dans la méthode toThrow.

Négation

Nous pouvons également nier des matchers en chaînant le matcher après un not :

1. Quel est le but du matcher toEqual dans Jest ?

2. Quel matcher utiliseriez-vous pour vérifier si un tableau contient un objet spécifique avec des propriétés correspondantes ?

3. Quand utiliseriez-vous le matcher toMatch ?

4. Comment vérifiez-vous qu'une fonction lance une exception avec un message spécifique ?

Quel est le but du matcher toEqual dans Jest ?

Quel est le but du matcher toEqual dans Jest ?

Sélectionnez la réponse correcte

Quel matcher utiliseriez-vous pour vérifier si un tableau contient un objet spécifique avec des propriétés correspondantes ?

Quel matcher utiliseriez-vous pour vérifier si un tableau contient un objet spécifique avec des propriétés correspondantes ?

Sélectionnez la réponse correcte

Quand utiliseriez-vous le matcher toMatch ?

Quand utiliseriez-vous le matcher toMatch ?

Sélectionnez la réponse correcte

Comment vérifiez-vous qu'une fonction lance une exception avec un message spécifique ?

Comment vérifiez-vous qu'une fonction lance une exception avec un message spécifique ?

Sélectionnez la réponse correcte

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 2. Chapitre 7
We're sorry to hear that something went wrong. What happened?
some-alt