Problème: ignorer une partie des résultats du test du fichier .snap
la question ici: il y a des composants dans mon test qui ont des valeurs aléatoires et je ne me soucie pas vraiment de les tester. est-il possible d'ignorer une partie de mon fichier X.snap? donc quand je lance des tests à l'avenir, cela ne me donnera pas de résultats d'échec de test.
En fait, vous devez vous moquer des pièces mobiles.
Comme indiqué dans jest docs :
Vos tests doivent être déterministes. C'est-à-dire que l'exécution des mêmes tests plusieurs fois sur un composant qui n'a pas changé devrait produire les mêmes résultats à chaque fois. Vous êtes responsable de vous assurer que vos instantanés générés n'incluent pas de données spécifiques à la plate-forme ou d'autres données non déterministes.
Si c'est quelque chose lié au temps, vous pouvez utiliser
Date.now = jest.fn(() => 1482363367071);
Maintenant, vous pouvez également utiliser propriété matcher pour ces cas.
Par exemple pour pouvoir utiliser l'instantané avec ces objets:
const obj = {
id: dynamic(),
foo: 'bar',
other: 'value',
val: 1,
};
Vous pouvez utiliser :
expect(obj).toMatchSnapshot({
id: expect.any(String),
});
Jest vérifiera simplement que id est une chaîne et traitera les autres champs de l'instantané comme d'habitude.