À propos du projet
React Testing Library (RTL) est un utilitaire de test léger pour React qui favorise de bonnes pratiques de test en encourageant des tests qui ressemblent à la façon dont le logiciel est réellement utilisé. Il s'appuie sur `react-dom/test-utils` et fournit des utilitaires de test DOM simples et complets. Le principe directeur est le suivant : « Plus vos tests ressemblent à la façon dont votre logiciel est utilisé, plus ils peuvent vous apporter de confiance. »
Les principales fonctionnalités incluent :
- **Requêtes centrées sur l'utilisateur** : utilisez les fonctions `getBy`, `queryBy` et `findBy` pour interagir avec les éléments DOM comme le ferait un utilisateur, avec la prise en charge des sélecteurs regex.
- **Encourage des tests maintenables** : se concentre sur la fonctionnalité plutôt que sur les détails d'implémentation, de sorte que les refactorisations ne cassent pas les tests.
- **Fonctionne avec les hooks et les classes React** : les tests sont les mêmes quelle que soit l'implémentation du composant.
- **Léger** : n'expose que les méthodes qui encouragent de bonnes pratiques de test.
L'installation nécessite `@testing-library/react` et, à partir de la version 16, `@testing-library/dom`. Les versions 13+ nécessitent React v18. Il est également recommandé d'installer `@testing-library/jest-dom` pour des matchers Jest personnalisés.
L'utilisation de base implique le rendu des composants avec `render`, la simulation d'événements avec `fireEvent` et l'interrogation des éléments via `screen`. Des exemples complexes montrent comment simuler des appels API avec Mock Service Worker (MSW) pour les flux de connexion et la gestion des erreurs.
RTL fait partie de la famille Testing Library, qui inclut React Hooks Testing Library pour les hooks réutilisables. Elle est largement adoptée et maintenue par une grande communauté de contributeurs.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.