Métadonnées des tâches
Si vous développez un reporter personnalisé ou utilisez l’API Node.js de Vitest, il peut être utile de passer des données depuis les tests qui sont exécutés dans divers contextes à votre reporter ou gestionnaire personnalisé de Vitest.
Pour ce faire, s’appuyer sur le contexte de test n’est pas faisable car il ne peut pas être sérialisé. Cependant, avec Vitest, vous pouvez utiliser la propriété meta
disponible sur chaque tâche (suite ou test) pour partager des données entre vos tests et le processus Node.js. Il est important de noter que cette communication est unidirectionnelle, car la propriété meta
ne peut être modifiée que depuis le contexte de test. Les modifications apportées dans le contexte Node.js ne seront pas visibles dans vos tests.
Vous pouvez remplir la propriété meta
dans le contexte de test ou à l’intérieur des hooks beforeAll
/afterAll
pour les tâches de suite.
Une fois qu’un test est terminé, Vitest enverra une tâche comprenant le résultat et meta
au processus Node.js en utilisant RPC. Pour intercepter et traiter cette tâche, vous pouvez utiliser la méthode onTaskUpdate
disponible dans votre implémentation de reporter :
Vous pouvez également obtenir cette information à partir de l’état de Vitest lorsque les tests ont terminé de s’exécuter :
Il est également possible d’étendre les définitions de type lors de l’utilisation de TypeScript :