À propos du projet

Detox est un framework d'automatisation et de test de bout en bout en boîte grise open-source conçu pour les applications mobiles, ciblant principalement les applications React Native sur les plateformes Android et iOS. Contrairement aux outils de test traditionnels en boîte noire, Detox se synchronise avec l'état interne de l'application pour réduire l'instabilité des tests en surveillant les opérations asynchrones en temps réel. Les tests sont écrits en JavaScript à l'aide d'une API async-await moderne, ce qui les rend déboguables et lisibles — par exemple, en simulant des actions utilisateur comme la saisie de texte ou l'appui sur des boutons, puis en affirmant les changements de l'interface utilisateur. Les fonctionnalités clés incluent le support multiplateforme, la synchronisation automatique pour éviter les conditions de concurrence, la compatibilité avec les runners de test populaires (en particulier Jest), et une intégration transparente dans les environnements CI/CD tels que Travis CI, CircleCI ou Jenkins. Detox exécute les tests sur des appareils réels ou des simulateurs, renforçant ainsi la confiance lors du déploiement. Bien qu'il supporte officiellement les versions de React Native de v0.77.x à v0.84.x (y compris la New Architecture), il peut également fonctionner avec des versions plus récentes ou plus anciennes, bien que cela ne soit pas garanti. Le projet encourage les contributions de la communauté via les issues GitHub et Discord, et fournit une documentation complète comprenant des guides de démarrage, des principes de conception et des instructions de contribution. Detox est publié sous licence MIT et inclut des ressources non anglophones contribuées par la communauté, comme un tutoriel en portugais brésilien.