Marko Testing Library
Cette page a été traduite par PageTurner AI (bêta). Non approuvée officiellement par le projet. Vous avez trouvé une erreur ? Signaler un problème →
Marko Testing Library s'appuie
sur DOM Testing Library en ajoutant des API
pour travailler avec les composants Marko.
- npm
- Yarn
npm install --save-dev @marko/testing-library
yarn add --dev @marko/testing-library
Le problème
Vous souhaitez écrire des tests maintenables pour vos composants Marko. Dans cet objectif, vous voulez que vos tests évitent les détails d'implémentation et se concentrent plutôt sur leur vocation première : vous donner confiance. Ainsi, votre suite de tests doit rester maintenable à long terme pour que les refontes de composants (changements d'implémentation sans modification fonctionnelle) ne cassent pas vos tests et ne ralentissent pas votre équipe.
Cette solution
@marko/testing-library est une solution très légère pour tester des composants
Marko. Elle fournit des utilitaires simples basés sur
@testing-library/dom qui encouragent de
meilleures pratiques de test. Son principe fondamental est :
Ainsi, plutôt que de manipuler des instances de composants Marko rendus, vos tests travailleront avec de véritables nœuds DOM. Les utilitaires fournis par cette bibliothèque facilitent l'interrogation du DOM de la même manière qu'un utilisateur le ferait : trouver des éléments par leur texte d'étiquette (comme un utilisateur), trouver des liens et des boutons par leur texte (comme un utilisateur). Elle propose une API minimale et ciblée, et sait se faire oublier si nécessaire grâce à des échappatoires intégrées.
Cette bibliothèque encourage le développement d'applications plus accessibles et permet de concevoir des tests qui utilisent vos composants comme le ferait un utilisateur. Cela renforce la confiance dans le bon fonctionnement de votre application en conditions réelles.
Ce que cette bibliothèque n'est pas :
Un runner ou framework de test
Liée à un framework de test spécifique : vous pouvez l'utiliser avec Jest, mocha ou d'autres exécuteurs.
NOTE : Cette bibliothèque repose sur
DOM Testing Libraryoù se trouve la logique principale des requêtes.