
Comment améliorer les performances du code Claude avec des tests automatisés
Claude Code fonctionne plutôt bien. Vous pouvez saisir une série d’instructions et lui demander de produire du code ou une autre sortie pour vous. Cependant, vous pouvez faire certaines choses pour augmenter considérablement les performances de Claude Code, notamment en matière de programmation.
Dans cet article, je parlerai de la technique numéro un que j’utilise chaque jour pour rendre mon Claude Code plusieurs fois plus efficace : les tests automatisés/plus efficaces.
À première vue, cela peut sembler un sujet ennuyeux, mais lorsque vous en apprenez davantage, les tests, en particulier lorsqu’ils sont automatisés ou rendus plus efficaces, sont un excellent moyen de gagner beaucoup de temps. Si vous pouvez obliger l’agent à tester ses propres implémentations, cela le rendra beaucoup plus efficace dans la production de la solution que vous souhaitiez créer.

Pourquoi automatiser les tests
La principale raison pour laquelle vous devriez automatiser les tests est que cela vous rend simplement beaucoup plus efficace. Si vous pouvez demander à un agent de tester automatiquement ses propres implémentations, il deviendra bien meilleur dans sa capacité à mettre en œuvre la solution que vous décrivez dans votre invite. En fin de compte, cela vous permet de gagner beaucoup de temps, car vous n’avez pas besoin d’itérer plusieurs fois avec l’agent pour obtenir la solution exacte souhaitée.
En outre, un autre point important est que, maintenant que les agents de codage sont devenus si efficaces dans la production de code, le véritable goulot d’étranglement de la programmation est devenu le test. Vous devez tester que la mise en œuvre fonctionne réellement conformément à ce que vous avez en tête. Je trouve que je passe la plupart de mon temps à programmer, à tester différentes solutions et à m’assurer que tout fonctionne comme prévu. Si vous pouvez rendre les tests soit plus efficaces, soit complètement automatisés, cela résoudra ainsi le plus gros goulot d’étranglement que j’ai en programmation, ce qui me rendra naturellement beaucoup plus efficace.
Je pense que cela s’applique à beaucoup de personnes qui utilisent activement des agents de codage pour programmer, et je partage simplement comment j’automatise et rends mes tests plus efficaces.
Comment automatiser les tests
Je vais parler de quelques aspects concernant les tests. Tout d’abord, je parlerai de l’automatisation des tests, c’est-à-dire lorsque vous donnez à votre agent l’accès pour exécuter lui-même des tests. Cela peut se produire de différentes manières. Vous pouvez, par exemple, lui confier des scripts de test à exécuter, des tests unitaires à exécuter ou des tests d’intégration complets. En continuant, j’expliquerai comment rendre les tests avec des humains plus efficaces. Parfois, il n’est pas possible pour l’agent de codage d’effectuer entièrement le test lui-même. Cela nécessite peut-être un contexte ou des autorisations spéciales. Il s’agit peut-être d’une action compliquée au sein d’une interface utilisateur que vous ne voulez pas que l’agent de codage fasse, ou que l’agent de codage ne peut pas faire, etc.
Tests automatiques agents
Voici les trois étapes principales du test automatique :
- Assurez-vous que l’agent dispose de toutes les autorisations dont il a besoin
- Inviter l’agent à configurer des tests et à tester ses implémentations
- Assurez-vous que les tests sont toujours exécutés avant les validations ou les fusions, en fonction du moment où vous souhaitez qu’ils s’exécutent.
- Assurez-vous que tout nouveau code fait l’objet de tests mis à jour et examinez parfois manuellement les tests pour vous assurer qu’ils fonctionnent et font ce que vous pensez qu’ils font.
Je vais commencer par expliquer comment vous pouvez donner à l’agent l’accès aux tests en cours d’exécution. Le point le plus important que vous puissiez noter ici est que vous devez permettre à l’agent d’exécuter des tests. Cela se fait en lui donnant un accès suffisant, par exemple, peut-être qu’il a besoin d’un accès AWS pour accéder aux données, ou peut-être qu’il a besoin d’un accès au navigateur pour naviguer dans l’application. Ainsi, la première étape consiste à s’assurer que l’agent dispose de toutes les autorisations dont il a besoin.
D’après mon expérience, vous pouvez exécuter Claude Code avec les autorisations dangereusement ignorées ou le mode automatique, qui a été récemment publié, et cela fonctionne très bien. Malheureusement, lorsque j’utilise d’autres agents de codage tels que Gemini ou Chachipetee, je ne l’ai pas encore fait car j’ai eu des expériences dans lesquelles les agents de codage ont effectué des actions involontaires et irréversibles. Cependant, cela ne s’est jamais produit lorsque j’ai utilisé les modèles de Claude.
La deuxième partie des tests automatisés consiste simplement à inviter l’agent à configurer des tests. Par exemple, je demande à mon modèle de mettre en place des tests d’intégration. Les tests d’intégration ne sont essentiellement qu’une série d’appels d’API qui garantissent que le flux via l’application se déroule comme prévu. Et avec les agents de codage, cela fonctionne très bien. Par exemple, effectuez un appel LLM qui mène à un pipeline d’analyse, etc. Vous pouvez rendre le processus déterministe et garantir que les résultats sont corrects à chaque fois. Le simple fait d’informer l’agent de mettre en place des tests d’intégration fonctionnera très bien ; le modèle mettra en place les tests et fonctionnera immédiatement mieux.
Vous pouvez également simplement demander au modèle de créer des scripts de test qui testent une implémentation et lui dire qu’il doit exécuter ce script de test pour s’assurer que tout fonctionne comme prévu, et ne pas s’arrêter jusqu’à ce que le script de test fonctionne correctement. La dernière partie est très importante car parfois les modèles sont en fait un peu paresseux et vous devez les informer explicitement qu’ils ne sont pas autorisés à s’arrêter avant que l’implémentation ne soit réussie. Bien entendu, cela suppose que la mise en œuvre soit possible compte tenu des autorisations et des actions que vous avez accordées à l’agent de codage.
En continuant, il est également important que vous vous assuriez que ces tests sont exécutés avant que le code ne soit mis en production. Vous pouvez exécuter le test en tant que hooks de pré-validation, bien que cela puisse parfois vous ralentir car les tests doivent être exécutés avant chaque validation, et si le test prend un certain temps, il vous ralentira. Vous pouvez également les faire exécuter à chaque fois que vous avez un push, un nouveau push à une pull request. Autrement dit, si une pull request est mise à jour, exécutez des tests d’intégration. Ces tests peuvent également faire partie des actions GitHub, par exemple, afin qu’ils s’exécutent automatiquement et que vous n’ayez pas besoin de les exécuter sur votre ordinateur. Cependant, d’après mon expérience, il est souvent agréable d’avoir ces tests sur votre ordinateur, car cela les rend plus rapides et vous pouvez les déclencher plus facilement.
Enfin, dans la section des tests automatisés, je souhaite souligner comment vous devez vous assurer que vous mettez constamment à jour vos tests en fonction du nouveau code produit. Par exemple, si vous produisez un nouveau morceau de code, assurez-vous d’y ajouter de nouveaux tests. Et si vous supprimez l’ancien code, assurez-vous de supprimer les tests correspondants. Il est important de maintenir les tests pour qu’ils soient efficaces. Bien que cette maintenance puisse sembler un travail supplémentaire au départ, elle vous fera en fait gagner du temps à long terme car vous n’exécutez pas de tests inutiles et vous vous assurez que tout votre code est testé, ce qui réduit les risques de bugs.
De plus, je vous recommande parfois d’inspecter manuellement les tests en regardant littéralement les entrées et les sorties et en demandant à l’agent de vous montrer les résultats. Cette inspection manuelle des tests peut parfois être très efficace pour garantir que le test fonctionne comme prévu et faciliter la découverte des bogues dans le test.
Rendre les tests manuels plus efficaces
Le deuxième point sur les tests que je souhaite aborder est de rendre les tests manuels plus efficaces. Quand je parle de tests manuels, j’entends des tests qui nécessitent un humain pour les réaliser, et qui ne peuvent pas être effectués par une IA. Malheureusement, certains tests doivent être effectués par vous-même et vous ne pouvez pas simplement les confier à une IA. Cela peut se produire pour plusieurs raisons :
- La tâche est trop compliquée à réaliser pour l’IA et vous devez l’accomplir vous-même
- La tâche inclut quelque chose auquel l’IA n’a pas accès ou n’est pas autorisée. Par exemple, il nécessite un accès administrateur que vous ne souhaitez pas accorder à votre IA, ou il utilise de l’audio auquel l’IA n’a pas actuellement accès.
- La tâche est trop compliquée à réaliser pour l’IA, et vous ne lui faites pas confiance pour l’accomplir correctement.
Dans ces cas-là, la meilleure chose que vous puissiez faire est de rendre les tests plus efficaces pour vous-même. Bien sûr, votre premier réflexe lorsque vous produisez des tests devrait toujours être d’essayer de les automatiser entièrement afin que vous n’ayez jamais à y toucher vous-même et que l’IA les exécute toujours automatiquement. Cependant, en réalité, vous devez également le tester vous-même.
Mon astuce numéro un pour rendre les tests plus efficaces est d’utiliser des tests visuels. Par exemple, si je demande à l’IA de résoudre beaucoup de tâches pour moi, je lui fais d’abord créer un rapport HTML composé de chaque tâche et d’une case à cocher à côté de ces tâches afin de pouvoir cocher toutes les tâches à effectuer. Je dis également à l’IA de me fournir des liens vers les pages contenant le contenu que je dois tester et la description exacte de la manière dont je peux tester son fonctionnement. Cela simplifie beaucoup le processus car je n’ai pas besoin de me souvenir de tout ce dont j’ai besoin pour tester et comment le tester. Mais cela m’a été consciemment présenté dans un rapport. Vous pouvez en voir un exemple ci-dessous :

Un autre point dans la façon dont je facilite les tests est que j’essaie de sous-traiter autant de tâches que possible à l’agent de codage. Par exemple, si j’ai besoin de données particulières pour tester quelque chose manuellement, je ne passe pas beaucoup de temps à rechercher manuellement les données. Je demande à l’agent de codage d’accéder aux ressources requises et de me retrouver automatiquement les données.
Conclusion
Dans cet article, j’ai expliqué comment automatiser les tests avec Claude Code pour devenir beaucoup plus efficace avec Claude Code ou tout autre agent de codage que vous utilisez. J’ai principalement expliqué comment vous pouvez soit automatiser les tests, ce qui est l’approche la plus préférable, soit rendre les tests manuels plus efficaces. Alors que les agents de codage sont devenus aussi performants qu’ils l’ont été, notamment après la sortie des derniers modèles Opus, je pense que les tests sont devenus le goulot d’étranglement. Alors qu’auparavant, vous passiez le plus de temps à écrire du code manuellement, vous ne passez plus autant de temps à écrire du code manuellement et vous passez beaucoup plus de temps à tester les implémentations réelles. Il est donc logique d’essayer d’optimiser le processus de test pour le rendre plus efficace. Pour maximiser votre efficacité en tant que programmeur, je me concentrerais certainement sur la partie test et réfléchirais à la manière dont vous pouvez y devenir plus efficace. Les techniques que j’ai présentées dans cet article ne sont que quelques exemples de ce que je fais personnellement pour rendre les tests plus efficaces.
👉 Mon eBook et mon webinaire gratuits :
🚀 10x votre ingénierie avec les LLM (cours gratuit par e-mail de 3 jours)
📚 Obtenez mon ebook gratuit sur les modèles de langage de vision
💻 Mon webinaire sur les modèles de langage de vision
👉 Retrouvez-moi sur les réseaux sociaux :
Consultez également mon article sur Comment maximiser Claude Cowork.



