Pour écrire des tests unitaires, pourquoi la plupart des plugins utilisent-ils WP_UnitTestCase
au lieu de bibliothèques populaires telles que WP_Mock
?
La raison pour laquelle je pose cette question est parce que WP_UnitTestCase ne semble pas être un cas de test unitaire, mais un test d'intégration car il nécessite un environnement de test WordPress et des appels de base de données vers WordPress-test-db? Tandis que WP_Mock bloque toutes les fonctions WP, vous pouvez tester la classe séparément (ce qui correspond également à la définition des tests unitaires). Y a-t-il quelque chose qui me manque ici?
L’un est officiel, l’autre est une bibliothèque tierce par 10up, alors les gens ont tendance à utiliser le WP_UnitTestCase
officiel
Il n'y a pas de bon ou de mauvais choix cependant, utilisez la bibliothèque que vous préférez
Y a-t-il quelque chose qui me manque ici?
Non, certains tests effectués par le noyau nécessitent une installation temporaire WP. Certaines anciennes API n'étaient pas conçues pour l'isolation de test. De ce fait, WP_UnitTestCase
et WP_Mock
sont tous deux capables d'effectuer des tests unitaires, mais WP_UnitTestCase
est également utilisé pour d'autres types de tests.
Cependant, pour vos besoins en tant que plugin ou auteur de thème, cette information n'est pas pertinente et constitue une option. C'est vraiment à votre préférence personnelle