Il existe différents threads disponibles pour les tests unitaires dans WordPress. En ce qui concerne, il devrait y avoir un test unitaire approprié pour chaque élément de personnalisation effectué dans WordPress.
J'ai vérifié quelques plugins et articles sur le même sujet. En voici quelques-uns.
- http://codex.wordpress.org/Theme_Unit_Test
- http://wptest.io/
- https://make.wordpress.org/core/handbook/testing/automated-testing/phpunit/
Maintenant, avec l'unité PHP, nous pouvons écrire des cas de test selon nos besoins. Des cas de test peuvent être écrits pour les fonctionnalités de base et la personnalisation.
Qu'en est-il des tests unitaires automatisés pour le thème avec des plugins lourds et la personnalisation, c'est-à-dire Mega Menu, compositeur visuel, personnalisation dans Woo Commerce.
Comment cela peut-il être fait? Existe-t-il des normes de test unitaire pour le site développées avec un thème et des plugins premium avec un haut niveau de personnalisation?
la source
Réponses:
Je pense que ce que vous recherchez serait en fait techniquement être appelé tests fonctionnels , tests d'intégration , ou les tests d'acceptation . Il semble que vous souhaitiez tester le comportement du frontal de votre site Web (ou le comportement frontal d'un plugin ou d'un thème), et non chaque unité du code lui-même. Vous pouvez utiliser un outil comme PHPUnit pour tester votre code PHP, et un outil comme QUnit pour tester votre code JS, mais vous aurez besoin d'un outil différent pour tester le comportement réel du site Web (ou fonctionnalité de plugin / thème) dans son ensemble intégré .
Malheureusement, les tests d'acceptation sont encore assez jeunes dans l'espace WordPress. Il y a quelques plugins ou thèmes qui le font, mais il n'y a pas de méthode "core" (mais voir ticket trac # 34693 ). Il n'y a pas nécessairement non plus d'outil consensuel de "meilleures pratiques". Donc, en ce qui concerne les outils spécifiques à WordPress, c'est un domaine qui est toujours en cours d'exploration. (Je commence moi-même à explorer les tests d'acceptation d'un plugin WordPress.)
Cependant, il existe de nombreux outils différents pour les tests d'acceptation, ils n'ont tout simplement pas été conçus spécifiquement pour WordPress. Et c'est OK. Parce que lorsque vous testez le comportement frontal d'un site, peu importe ce qui alimente le back-end. Donc, un outil qui peut exécuter des tests sur un site construit à partir de zéro fonctionnera probablement très bien aussi pour un site WordPress ou tout autre site.
Parce que WordPress est écrit en PHP et a tendance à utiliser PHPUnit pour les tests, Codeception est un choix naturel pour cela. Il s'agit d'un framework qui vous permet de créer des tests unitaires (avec PHPUnit), des tests fonctionnels et des tests d'acceptation, que vous pouvez exécuter avec une seule commande. Je pense que c'est peut-être le genre de chose que vous recherchez. Si c'est le cas, vous voudrez probablement également consulter WP Browser , qui est un ensemble d'extensions spécifiques à WordPress pour Codeception.
S'il existe un outil de référence pour l'acceptation des tests des plugins WordPress, je dirais que ce pourrait être Codeception. Mais à ma connaissance, c'est encore une chose jeune parmi la plupart des développeurs WordPress, nous devrons donc attendre et voir ce qui se passera à l'avenir. N'hésitez pas à vous lancer et à l'utiliser quand même - peut-être que cela établira une tendance!
Mise à jour 2017-12-12
J'utilise WP Browser pour tester le plugin WordPoints , et j'en suis satisfait. J'ai également mis en place un référentiel montrant comment exécuter les tests d'acceptation du navigateur WP sur Travis CI . Il n'y a toujours pas de norme de facto dans l'écosystème WordPress, mais Codeception + WP Browser reste l'une des options les plus importantes.
la source