---
title: "Automatisation"
weight: 80
description: "Relier les tests automatiques et l'agent IA à capTests (à destination des développeurs)."
---

# Automatisation

Cette page s'adresse aux développeurs. Elle explique, au niveau fonctionnel,
comment capTests se branche sur l'intégration continue et sur l'agent IA pour
remplir et tenir à jour la liste des points et leur couverture. capTests
**n'exécute pas** les tests : il en ingère les résultats.

## Le principe : un repère par test

Le lien entre un point de test et un test automatique repose sur la **référence**
du point (par exemple `TC-SI-001`, voir [Cas de test](/captests/cas-de-test)). Le
développeur pose sur le test automatique un repère dérivé de cette référence :

- côté **Playwright**, un tag de la forme `@TC-SI-001` ;
- côté **PHPUnit**, un groupe de la forme `TC-SI-001`.

Ce repère est non invasif : il s'ajoute aux tests existants sans en refondre la
structure. Lors de l'exécution, un composant dédié (un reporter Playwright ou une
extension PHPUnit) lit ces repères et envoie les résultats à capTests, avec le
numéro de version testée.

## La couverture se calcule à l'ingestion

À chaque remarque de résultats, capTests rapproche chaque résultat du bon point
(grâce au repère) et recalcule la couverture de la version (voir
[Couverture automatique](/captests/couverture-automatique)). Un test qui passe
fait apparaître le badge **Couvert** ; un test qui échoue fait apparaître
**Régression** ; un test désactivé fait apparaître **Ignoré**.

Un développeur peut aussi déclarer explicitement qu'un test couvre un point, en
précisant le niveau :

- **full** : le test couvre entièrement le point.
- **partial** : seule la mécanique de fond est testée, le détail reste à vérifier
  à la main (badge **Partiel**).

Ces déclarations apparaissent dans le bloc **Tests automatiques liés** de la fiche
d'un point.

## Vidéos de référence et d'échec

Les tests automatiques peuvent aussi publier des **vidéos** sur un point, pour que
le développeur ou le testeur humain compare le comportement attendu et le
comportement observé :

- **Vidéo de référence** (le comportement attendu, "golden") : envoyée **une seule
  fois** par point et par plateforme. Tant que le test passe, elle n'est jamais
  réenvoyée. Une nouvelle référence n'est captée qu'après suppression de
  l'ancienne (voir ci-dessous).
- **Vidéo d'échec** : envoyée quand le test échoue, rattachée à la version
  concernée. La dernière vidéo d'échec remplace la précédente pour un même point,
  une même version et une même plateforme.

Côté reporter, le geste type est : si le test **passe** et qu'aucune référence
n'existe encore, envoyer la vidéo de référence ; si le test **échoue**, envoyer la
vidéo d'échec avec le numéro de version. Les deux séquences se retrouvent ensuite
côte à côte dans le bloc **Vidéos de test** de la fiche du point (voir
[Cas de test](/captests/cas-de-test)).

Les vidéos acceptées sont au format WebM ou MP4, dans la limite de taille
configurée pour la plate-forme (20 Mo par défaut). Le binaire transite par
l'interface de programmation (API) ; il ne passe pas par l'agent IA. L'agent peut
en revanche **lister** les vidéos d'un point, **supprimer** la vidéo de référence,
et **demander la marche à suivre** pour l'envoi : un outil dédié lui renvoie
l'adresse exacte, les champs à fournir et un exemple de commande, qu'il exécute
ensuite lui-même pour téléverser le fichier.

## Piloter la liste depuis l'agent IA

capTests expose ses fonctions aux développeurs de deux façons complémentaires :
une interface de programmation (API) et un serveur d'outils pour agent IA (MCP).
Le geste habituel du développeur ("implémente cette liste", puis "vérifie que
cette liste est couverte par des tests automatiques") devient une suite d'actions
de l'agent IA, sans copier-coller manuel. L'agent peut notamment :

- lister les points et leur couverture, consulter le détail d'un point ;
- créer ou modifier des points, faire évoluer leur cycle de vie ;
- relier un test automatique à un point ;
- créer une version (mettre une livraison en ligne) ;
- remonter les résultats d'une exécution de tests ;
- promouvoir une remarque en point de test ;
- lister les vidéos d'un point et, pour un chef de projet, supprimer la vidéo de
  référence ;
- exporter la todolist au format Markdown.

Le format **Markdown** reste un format de premier rang : la todolist s'exporte et
s'importe en texte, ce qui reste pratique pour la lecture, le copier-coller ou le
pilotage par agent. Les pièces jointes et les liens additionnels ne sont pas
représentables en texte et restent accessibles via l'interface et l'API.

> **Note :** la configuration technique des reporters CI, des jetons de service et
> de la connexion de l'agent IA relève du dépôt du projet testé et de son
> environnement de développement. Elle sort du périmètre de cette documentation
> utilisateur.
