Documentation

Configuration de la compilation et des tests

Expliquer à Coroid comment construire et tester votre projet, et pourquoi cette étape est plus cruciale que tout autre paramètre que vous configurez.

Un agent incapable de construire et de tester votre projet ne peut pas valider son propre travail. Tout ce qui suit – les contrôles qualité, la revue, la confiance que vous accordez à une demande d'intégration – dépend de la correction de ces commandes.

Coroid les détecte lors de la création du projet. Vérifiez ce qu'il a trouvé.

Ce dont Coroid a besoin

CommandeUtilisé pour
InstallerRestaurer les dépendances dans un espace de travail propre
CompilerConfirmer que le projet compile correctement
TesterExécuter votre suite de tests et lire les résultats

L'espace de travail est propre et temporaire par Tâche ; chaque commande doit donc fonctionner à partir d'un clonage frais, sans élément en cache ni pré-installé.

Où la détection échoue souvent

Les monorépos. Les commandes se trouvent dans un sous-répertoire ou nécessitent un filtre d'espace de travail. La commande au niveau racine peut exister mais produire un résultat incorrect.

Les étapes de configuration. Les suites nécessitant une génération de code, une migration ou la création d'une base de données avant leur exécution. La détection repère la commande de test mais ignore ses prérequis.

Les dépendances aux services. Les tests nécessitant le fonctionnement d'une base de données, d'un cache ou d'une file d'attente. Si votre suite suppose que localhost:5432 est actif, elle échouera dans un espace de travail propre.

Les variables d'environnement. Les suites lisant la configuration depuis un .env qui n'est pas présent dans le dépôt.

Symptômes d'une mauvaise configuration

La signature correspond à des échecs de Tâches lors de la vérification pour des raisons sans rapport avec le changement apporté : le même échec survient sur chaque Tâche, à la même étape, quel que soit le contenu demandé.

Si le premier signe d'échec apparaît avant même l'écriture du code, il s'agit presque toujours de la commande de compilation. Si l'échec survient après le changement, c'est généralement la commande de test ou une dépendance des tests.

Conteneurs

Lorsqu'un projet peut être conteneurisé, Coroid peut utiliser cet environnement d'exécution – ce qui résout d'un coup les dépendances aux services et les divergences d'environnement, car le conteneur les intègre déjà.

Si vous disposez d'un fichier Dockerfile ou Compose fonctionnel permettant d'exécuter vos tests, c'est généralement la configuration la plus fiable dont vous disposez.

Prise en charge des langages

Les agents fonctionnent dans n'importe quel langage, mais le degré de validation autonome assuré par Coroid varie – notamment pour la navigation sémantique. Consultez la prise en charge des langages et l'environnement de l'agent pour connaître ce qui est installé dans l'espace de travail et quels langages disposent d'un serveur linguistique.

Configurer correctement ces commandes est plus important que le langage utilisé. Une paire de commandes de compilation et de test correcte dans un langage peu pris en charge vaut mieux qu'une configuration erronée dans un langage bien supporté.