Tester efficacement avec PhpStorm

Dans cet épisode, j'explique comment PhpStorm prend en charge différents frameworks de tests, tels que PHPUnit, Pest, Behat, Codeception et PHPSpec. Vous apprendrez à exécuter des suites de tests directement dans l'IDE, à analyser leurs résultats, à tirer parti du mode surveillance pour relancer automatiquement des tests, et à générer des fichiers de tests sans effort.

Transcription

L'objectif ici n'est pas de vous expliquer pourquoi et quand les tests sont importants. Je veux juste vous montrer à quel point PhpStorm facilite les tests. Que vous écriviez en PHPUnit, Pest, Behat, Codeception ou PHPSpec, l'IDE propose des intégrations pour tous ces frameworks.

Disons que vous disposez déjà d'une suite de tests. Au lieu d'effectuer l'exécution dans le terminal, vous pouvez sélectionner un dossier de tests dans PhpStorm et appuyer sur Ctrl+Maj+R. Vous pouvez faire de même pour les sous-dossiers, les classes de tests individuelles et même des méthodes de tests spécifiques. Si vous vous trouvez ailleurs dans votre code et que vous souhaitez relancer l'exécution de votre suite de tests, vous pouvez appuyer sur Ctrl+R à partir de n'importe quel emplacement. Bien entendu, vous retrouverez également toutes ces actions dans le menu Maj+Maj ; recherchez simplement Run et vous verrez toutes les options pertinentes.

PhpStorm affichera les résultats de vos tests dans la fenêtre dédiée. Vous y verrez également des boutons que vous pourrez utiliser pour relancer tous les tests ayant échoué. Vous pouvez même activer un mode surveillance qui relancera automatiquement les tests chaque fois que vous apporterez des modifications à votre code. De plus, il est possible accéder rapidement aux tests en échec en faisant un double-clic sur les fichiers et les méthodes dans la fenêtre de tests. Pour relancer des tests spécifiques à partir des classes de tests, cliquez sur l'icône run de la gouttière.

PhpStorm prend également en charge la couverture des tests afin que vous puissiez repérer quelles lignes de votre base de code ne sont pas couvertes par votre suite de tests. L'IDE affichera des indicateurs visuels dans la gouttière pour mettre en évidence les endroits qui requièrent votre attention.

Passons maintenant à l'une de mes fonctionnalités préférées de l'IDE : la capacité de PhpStorm à générer des fichiers de tests pour vous. Dans n'importe quel fichier, vous pouvez appuyer sur Maj+Maj et rechercher Go To Test ; s'il existe un fichier de tests pour cette classe spécifique, PhpStorm y accédera ; s'il n'y en a pas, l'IDE en créera un pour vous.

Faire l'inverse, en allant du test à l'objet, est possible également.Utilisez le même raccourci clavier et vous le trouverez en appuyant sur Maj+Maj et en recherchant Go To Test Subject.

L'écriture des tests peut être fastidieuse, je ne vais pas vous dire le contraire, surtout la configuration de votre classe de tests initiale. PhpStorm peut générer des classes de tests entières à votre place grâce à son AI Assistant, à condition de disposer d'une licence AI Assistant valide et d'avoir installé le plugin AI Assistant. Vous pouvez appuyer sur Alt+Entrée dans n'importe quelle classe, choisir AI Actions, puis Generate Tests. L'AI Assistant générera alors un aperçu pour vous, que vous pourrez toujours adapter si nécessaire. C'est un petit raccourci sympa pour gagner du temps.

Bons tests à tous et toutes :-)