Existe-t-il une différence entre Travis CI qui exécute mes tests PHPUnit et moi utilisant WP-CLI pour générer des fichiers de test unitaire et phpunit
en local? Je me demande si le double emploi est nécessaire ou inutile.
Travis est un service d'intégration continue hébergé . Travis prend les fichiers que vous avez validés dans votre dépôt Github et lance PHPUnit contre eux.
Le fait d'exécuter phpunit
dans votre environnement local présente une différence notable: l'exécution de tests sur Travis nécessite au moins trois étapes:
À long terme, il sera beaucoup plus rapide de commencer par exécuter vos tests localement avant de valider, afin de réduire le temps d'attente avant de voir si vos tests échouent.
Travis CI est idéal pour vous alerter de problèmes tels que des erreurs ou des tests ayant échoué. Cependant, ce n'est pas très utile pour le débogage. Si votre projet est petit et que le code est simple, vous n'avez probablement pas besoin d'exécuter les tests localement. Mais pour la plupart des projets avec une bonne quantité de code, la recherche de la cause première des échecs de test nécessite souvent beaucoup de débogage. Pouvoir exécuter les tests et résoudre le problème sur votre ordinateur local (en utilisant éventuellement xdebug ou autre) est extrêmement utile.
En outre, comme l'a souligné Daniel Bachhuber, , l'installation locale des tests vous permet de les exécuter sans avoir à envoyer votre code à Travis et à attendre l'exécution de la construction. L'exécution de tests locaux est beaucoup plus rapide et vous permet de tester votre code au fur et à mesure, sans avoir à le valider avant de savoir s'il fonctionne.
Pour ces raisons, je pense que vous constaterez que vous voudrez installer les tests localement.