# Pruebas

Escribe casos de prueba con criterios de aceptación y deja que un modelo de revisión compruebe cada cambio del agente

> Full REST + WebSocket API reference: https://api.happ.tools/reference

Las **Pruebas** detectan una respuesta mala antes de que la vea un cliente. Describes una conversación y lo que el agente debe (y no debe) hacer; Happ la reproduce en un chat oculto del playground —el mismo prompt, modelo, herramientas y base de conocimiento que en los chats reales— y un **modelo de revisión** evalúa el diálogo: **Aprobados** o **Fallida**, una puntuación de 0 a 1 y un veredicto.

Ábrelo desde la barra lateral del agente: **Monitor** > **Prueba**. Las pruebas se ejecutan como chats de texto; para comprobar la voz, usa **Probar con una llamada** en la barra superior.

<TestsPageDemo />

## Añadir un caso de prueba [#add-a-test-case]

**Añadir caso** abre el editor:

| Campo                                        | Qué hace                                                                                                                                                       |
| -------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Nombre                                       | Hasta 300 caracteres, p. ej., "Encuentra un producto en el catálogo"                                                                                           |
| Modo                                         | **Cliente IA**: un modelo interpreta al cliente según tu escenario (hasta 12 turnos). **Guion**: hasta 10 mensajes del cliente enviados literalmente, en orden |
| Escenario del cliente / Mensajes del cliente | Quién es el cliente, qué quiere, los datos que da, o los mensajes exactos                                                                                      |
| Criterios de aceptación                      | Lo que el agente debe hacer y no debe, p. ej., "Llama a search\_in\_vector() antes de indicar un precio"                                                       |
| Variables dinámicas                          | Valores para los `{{placeholders}}` del prompt durante esta prueba, como en una llamada real                                                                   |
| Simulaciones de herramientas                 | Respuestas falsas para las herramientas (ver abajo)                                                                                                            |
| Límites de gasto                             | **Máx. mensajes en el diálogo** (2–200) y &#x2A;*Coste máx., $**. Superar un límite detiene el caso con un error                                               |

Los casos nuevos se guardan **desactivados**: activa **Con todos** en la tabla para incluirlos en **Ejecutar todos**.

**Sugerir (IA)** redacta casos por ti: el modelo lee el prompt, las herramientas y la base de conocimiento del agente. Añade un enfoque opcional ("devoluciones, clientes groseros"), elige cuántos (1–10) y quédate con los que valgan la pena.

## Simular las herramientas [#mock-the-tools]

**Las llamadas a herramientas en las pruebas son reales salvo que se simulen**: una prueba puede crear un pedido real en tu CRM. Simula todo lo que modifique datos:

* **Simular todas las herramientas**: cada llamada a herramienta en cada prueba de este agente recibe una respuesta simulada.
* **Esta prueba / Todas las pruebas**: simula una herramienta para un caso o para todo el agente. Las reglas se comprueban de arriba abajo y gana la primera coincidencia; una regla puede coincidir con un argumento de la llamada (`parameter = value`) y puede devolver un error.

## Ejecutar [#run]

* **Ejecutar todos** ejecuta todos los casos activados; ▶ en una fila ejecuta un caso, incluso uno desactivado.
* **Ejecutar en** elige la versión principal o un [borrador](/docs/agents/versions): prueba un experimento antes de que salga en vivo.
* **Modelo de revisión**: el modelo del juez. Por defecto es el del agente; uno distinto y más potente juzga mejor.

Antes de cada ejecución Happ muestra una estimación: casos, modelos, tokens y **coste estimado**. Los casos se ejecutan de tres en tres.

## Leer los resultados [#read-the-results]

**Ejecuciones** lista cada ejecución con su estado (**En cola**, **En curso**, **Completada**, **Fallida**), aprobados / total, tokens, coste y duración. Abre una ejecución para ver:

* los casos con **regresión** y los **corregidos** respecto a la ejecución anterior;
* cada caso: la puntuación, el **veredicto** del juez, el **diálogo** completo con cada llamada a herramienta y su entrada y salida;
* **Sugerir corrección**: una edición mínima del prompt con la que el caso pasaría. Es una sugerencia: aplícala tú mismo y vuelve a ejecutar el caso.

Un caso recibe **Error** en lugar de **Fallida** cuando no pudo terminar: se alcanzó un límite, una herramienta falló o el juez respondió algo sin sentido.

**API:** [api.happ.tools/reference](https://api.happ.tools/reference)

## Siguiente [#next]

* [Versiones y borradores](/docs/agents/versions): prueba un experimento en un borrador
* [Auditor](/docs/agents/auditor): comprueba las respuestas en vivo, no solo en pruebas
* [Herramientas](/docs/agents/tools): qué puede llamar el agente
