L’industrie de l’IA poursuit sa transformation rapide avec cette nouvelle annonce.
Microsoft open source un générateur de tests de code : un agent de tests unitaires polyglotte qui atteint un taux d’exécution des tâches de 92,1 %, contre 78,9 % pour Copilot en version standard
Microsoft a mis en open source « code-testing-generator », un agent polyglotte qui génère des tests unitaires puis vérifie leur bon fonctionnement. Il est fourni dans le plugin « dotnet-test » au sein du dépôt « dotnet/skills », sous licence MIT.
L’agent exploite une lacune que les assistants de codage laissent généralement ouverte. Une instruction telle que « générer des tests unitaires » ne précise pas quel framework utiliser, où se trouvent les fichiers ni quelles assertions employer. code-testing-generator résout ces questions en analysant le dépôt avant d’écrire quoi que ce soit. Il planifie, écrit, exécute et vérifie ensuite les tests qu’il génère. Lors du test de performance interne de Microsoft portant sur 152 tâches, il en a accompli 140, contre 120 pour GitHub Copilot en version standard. Les deux configurations utilisaient le même modèle et les mêmes invites.
Lors du test de performance interne de Microsoft portant sur 152 tâches, il en a accompli 140, contre 120 pour GitHub Copilot en version standard.
Oui. Il s’agit d’une définition d’agent associée à des compétences, et non d’un service hébergé ; elle s’exécute donc au sein de votre agent de codage existant et le code reste en local.
Il coordonne les travaux via un processus « Recherche-Planification-Mise en œuvre » (RPI). Il analyse le référentiel à la recherche de code nécessitant des tests, identifie le langage et le framework de test, analyse les tests existants pour vérifier le respect des conventions, et identifie les commandes réelles de compilation et de test. Cette dernière étape vise à résoudre un problème spécifique : un projet de test qui se compile localement mais qui ne s’exécute jamais en CI, car aucun service ne l’a enregistré.
Précisons, l’agent choisit ensuite l’une des trois stratégies suivantes : « Direct » écrit et valide les tests immédiatement ; « Single pass » effectue un seul cycle ; « Iterative » répète le processus pour les périmètres étendus ou les objectifs de couverture élevés. Il ne modifie jamais le code de production et évite les tests qui appellent des URL externes, se connectent à des ports ou dépendent de la synchronisation.
Avant de signaler que la tâche est terminée, l’agent effectue cinq vérifications. Il analyse les modifications mineures apportées au code qui devraient entraîner l’échec des tests, ce qui constitue une forme allégée de tests de mutation. Il recherche les assertions faibles ou manquantes. Il associe chaque scénario demandé à un test. Il construit l’espace de travail complet et exécute la suite de tests dans son intégralité. Cela confirme que la commande de test propre au référentiel détecte les nouveaux tests.
Lors d’un test de performance interne réalisé par Microsoft sur 152 tâches issues de dépôts réels, l’agent en a menées à bien 140 (92,1 %), contre 120 (78,9 %) pour la version standard de GitHub Copilot, avec le même modèle et les mêmes invites (soit 63 % d’échecs en moins).
Le gain est significatif. Sur 89 consignes vagues, l’agent en a résolues 79 (88,8 %) contre 59 (66,3 %), faisant passer le nombre d’échecs de 30 à 10. Sur 63 consignes détaillées, les deux ont obtenu un score de 61 (96,8 %). Sur 15 tâches ciblant une différence spécifique, l’agent a réussi les 15, tandis que la version standard de Copilot n’en a réussi aucune.
Les acteurs concernés devront s’adapter à ce nouveau contexte.
Sur le même sujet :
- RAG « pixel-native » : guide pratique de l’indexation visuelle des documents
- AWS apporte son soutien à Superblocks, une start-up spécialisée dans le « vibe-coding », et les implications sont considérables | TechCrunch
Reportage initial : MarkTechPost : MarkTechPost