Generación de Casos de Prueba con IA a Partir de Requisitos: El Prompt que Produce Pruebas Ejecutables

Tienes cuarenta historias de usuario en el backlog del sprint y un ingeniero de QA con tres días. Alguien ya sugirió pegar los criterios de aceptación en ChatGPT, y alguien más lo probó y recibió treinta casos de prueba que se leen bien y no se pueden ejecutar.

Ambos tienen razón. La generación de casos de prueba con IA produce un primer borrador utilizable en minutos, y se derrumba con un prompt de una línea, porque un modelo al que no se le da un contrato de salida optimiza para sonar útil en lugar de ser ejecutable. La solución vive en la estructura del prompt más que en la elección del modelo: cuatro partes fijas en la entrada, luego un pase de crítica que puntúa el borrador contra seis lentes de riesgo y regenera solo las brechas.

Lo que vuelve es Gherkin, un escenario por caso, etiquetado de P0 a P2, cada fila rastreada al criterio que cubre, listo para el importador de Xray, TestRail, o Jira. Abajo está la plantilla, el bucle, la rúbrica de revisión, y el punto honesto de cambio.

Por Qué la Generación de Casos de Prueba con IA Devuelve Basura con un Prompt de una Línea

El prompt con el que empiezan la mayoría de los equipos es alguna versión de “genera casos de prueba para este requisito”, y devuelve una lista que un gerente acepta y un evaluador no puede usar. Stack Overflow encontró que la frustración más común con las herramientas de IA era “soluciones de IA que están casi bien, pero no del todo”, reportada por el 66% de los encuestados.

Las Cuatro Cosas que le Faltan a un Prompt de una Línea

  • Estructura de entrada. Con solo prosa, el modelo inventa los límites de la función y adivina qué significa “inquilino” en tu producto.
  • Formato de salida. La prosa libre devuelve “Verificar que el usuario pueda iniciar sesión”, mientras que Gherkin devuelve un Given, When, y Then que un evaluador puede ejecutar.
  • Etiquetado. Los casos sin etiquetar llegan como una lista plana, mientras que una columna de riesgo la convierte en un subconjunto P0 que ejecutas en cada build.
  • Alcance de casos límite. Dejado abierto, el modelo produce rutas felices y una comprobación nula en lugar de expiración de sesión y aislamiento de inquilinos.

Por Qué el Resultado Parece “Razonable” pero No Es Ejecutable

Los casos se duplican entre historias, porque el modelo no lleva memoria de la historia que procesó un minuto antes, y nada se rastrea hasta un criterio, así que la cobertura no se puede reportar. Los pasos llegan como frases narrativas que dos evaluadores leen de dos formas distintas, y cada caso lleva la misma prioridad implícita, así que la suite no se puede recortar cuando la fecha se mueve.

El Nivel al que Este Artículo se Compromete

Esta guía se compromete a tres artefactos: una plantilla de prompt, un bucle de crítica, una rúbrica de revisión. Pega los tres en Claude, ChatGPT, o Gemini y deberías generar casos de prueba a partir de requisitos que vuelvan sin duplicados, etiquetados por riesgo, y rastreados.

La Plantilla de Prompt de Cuatro Partes

Cada parte de abajo elimina un fallo específico nombrado arriba. El orden importa, porque el modelo lee primero el contrato de entrada y las barreras al final, y las barreras son donde surte efecto un límite en el número de casos.

Estructura de Entrada

Cuatro entradas, en este orden: el texto del requisito, los criterios de aceptación como lista con viñetas en lugar de un párrafo, el contexto del stack tecnológico, y las seis clases de casos límite de abajo. El contexto de stack es la parte que los equipos se saltan y la parte que más cambia la salida.

Un modelo al que se le dice “Next.js app router, JWT con tokens de acceso de 15 minutos, seguridad a nivel de fila de Postgres, nueve idiomas incluyendo árabe” generará casos de prueba a partir de historias de usuario que nombran la ventana de renovación del token y el diseño de derecha a izquierda. Quítalo y obtienes casos que encajan en cualquier producto y no prueban ninguno.

La Petición

Pide una tabla donde cada fila sea un escenario en forma Given/When/Then, más dos columnas que el modelo nunca añade sin que se le pida: una columna de riesgo con P0, P1, o P2, y una columna de trazabilidad que nombre el criterio cubierto. Esa segunda columna hace que la cobertura sea reportable y la deduplicación posible, ya que el modelo ve qué criterios ya llevan tres casos.

Gherkin, especificado por el proyecto Cucumber, se gana su lugar por una segunda razón. Es el formato que el importador de Xray lee de forma nativa.

Restricción de Rol y Voz

La línea de rol hace un trabajo real sobre la verbosidad y el juicio de triaje. La nuestra dice: “Actúa como un ingeniero de QA con 8 años de experiencia en SaaS empresarial. Escribe casos de prueba que un ingeniero humano ejecutará hoy, y omite la cobertura de humo que el pipeline de CI ya maneja.”

Barreras de Salida

Deduplica contra los criterios antes de devolver nada, y descarta cualquier caso de ruta feliz cuya cláusula Then solo repita un criterio palabra por palabra, ya que eso prueba la frase en lugar del software. La tercera barrera limita la salida a tres casos por criterio a menos que se active una lente de riesgo.

Generación de Casos de Prueba con IA a Partir de Requisitos: El Prompt que Produce Pruebas Ejecutables
# PART 1 - INPUT
REQUIREMENT:


ACCEPTANCE CRITERIA:
- AC1: 
- AC2: 
- AC3: 

TECH-STACK CONTEXT:
- Framework:  
- Auth model: 
- Data store: 
- i18n scope: 

EDGE-CASE CLASSES TO COVER:
auth | permissions | concurrency | network | i18n | data-integrity

# PART 2 - THE ASK
Return a table. One row per test case. Columns:
  | ID | Title | Given | When | Then | Risk | Traces to |
- Given/When/Then: one line each, no supporting narrative.
- Risk: P0 (release blocker), P1 (this sprint), P2 (backlog).
- Traces to: the exact AC id this case covers.

# PART 3 - ROLE
Act as a QA engineer with 8 years of enterprise SaaS experience.
Write test cases a human engineer will run today.
Skip smoke coverage the CI pipeline already handles.

# PART 4 - GUARDRAILS
- Deduplicate against the acceptance criteria before returning.
- Drop any happy-path case whose Then only restates an AC verbatim.
- Cap at 3 cases per AC, unless an edge-case class above fires,
  then lift the cap for that AC only.
- Output the table and nothing else. No preamble, no summary.

El Bucle de Cobertura de Seis Lentes

La mayoría de las guías sobre cómo escribir casos de prueba con IA se detienen en el primer prompt, que es donde empieza el trabajo interesante. Un primer borrador cubre lo que los criterios dijeron en voz alta, y el bucle de abajo encuentra lo que asumieron en silencio.

Las Seis Lentes

  • Autenticación. Expiración de sesión a mitad de acción, renovación de token en una petición en curso, escalada de rol tras un cambio de permisos.
  • Permisos. Casos límite de RBAC, aislamiento de inquilinos, un usuario que pierde acceso mientras mantiene una página abierta.
  • Concurrencia. Doble envío, dos pestañas editando un registro, conflictos de bloqueo optimista, carreras en un contador compartido.
  • Red. Tiempos de espera, tormentas de reintento, modo sin conexión, una respuesta parcial que devuelve 200 con la mitad del payload.
  • i18n. Diseño de derecha a izquierda, formatos de fecha y número por idioma, cadenas que rompen un control de ancho fijo.
  • Integridad de datos. Campos anulables, valores límite, emoji en nombres, entrada de texto libre adyacente a inyección.
Generación de Casos de Prueba con IA a Partir de Requisitos: El Prompt que Produce Pruebas Ejecutables

El Prompt de Crítica

Pega la tabla del primer borrador de vuelta en la misma conversación y pide al modelo que audite su propia salida contra cada lente por nombre. Las instrucciones numeradas vencen a un párrafo aquí, porque el modelo responde cada elemento por turno mientras una petición en prosa se gana una sola frase resumen.

Here is the suite you just generated: 

For each of the six edge-case classes (auth, permissions, concurrency,
network, i18n, data-integrity):
  1. List which of my cases cover that class. Cite case IDs.
  2. Score coverage of that class: none | partial | adequate.
  3. Name what a senior tester would expect to see that I am missing.

Then return ONLY the missing cases, in the same table format.
Do not restate cases I already have.

La última línea es lo que ahorra el tiempo. Sin “devuelve solo los casos que faltan”, el modelo renumera todo y pierdes la revisión que ya hiciste.

Cuándo Detener el Bucle

Detente después de dos pases, o antes si el modelo reporta cobertura adecuada en cuatro de las seis lentes. Un tercer pase produce de forma fiable casos técnicamente válidos y comercialmente inútiles.

Lo que el Bucle Detecta en una Historia de Usuario Real

Toma una historia sencilla: como usuario recurrente, puedo iniciar sesión con email y contraseña y llegar a mi panel. El primer borrador devolvió credenciales válidas, contraseña inválida, cuenta bloqueada, y una comprobación de campo vacío, luego el pase de crítica puntuó autenticación como parcial, i18n como ninguna, concurrencia como ninguna.

Scenario: La sesión expira mientras el panel está abierto        [P0, AC3]
  Given estoy conectado e inactivo más allá del TTL de 15 minutos del token de acceso
  When activo una acción del panel que llama a la API
  Then el token de renovación renueva la sesión silenciosamente y la acción se completa

Scenario: Inicio de sesión concurrente desde un segundo dispositivo            [P1, AC1]
  Given estoy conectado en el dispositivo A
  When inicio sesión con las mismas credenciales en el dispositivo B
  Then ambas sesiones permanecen válidas y ningún panel muestra datos obsoletos

Scenario: Formulario de inicio de sesión en un idioma de derecha a izquierda             [P1, AC2]
  Given mi idioma es ar-SA
  When abro el formulario de inicio de sesión
  Then las etiquetas, el control de mostrar contraseña, y el texto de validación se reflejan correctamente

Ninguno de los tres es exótico. Los tres llegan a producción precisamente porque los criterios de aceptación nunca los mencionaron.

Fragmentos de Prompt en Claude, GPT-4o, y Gemini

La plantilla se ejecuta sin cambios en los tres modelos de chat principales, y cada uno necesita una línea correctiva. Esas líneas no cuestan nada y cambian la salida más que cambiar de modelo.

Claude Sonnet, Ajustes y Costo por Suite

Claude ejecuta el bucle de crítica con el mínimo de indicaciones y honra “devuelve solo los casos que faltan” de forma más fiable. Su hábito es el relleno narrativo, así que añade “una línea por Given/When/Then, sin narrativa de apoyo” a la parte dos. Anthropic lista Claude Sonnet 5 en 2$ por millón de tokens de entrada y 10$ por millón de salida.

GPT-4o, Ajustes y Costo por Suite

GPT-4o produce el primer borrador más rápido y la crítica de lentes más débil cuando las lentes llegan como un párrafo. Pégalas como una enumeración con viñetas en su lugar, la corrección más útil en la generación de casos de prueba con ChatGPT. OpenAI lista GPT-4o en 2,50$ por millón de tokens de entrada y 10$ por millón de salida.

Gemini 2.5 Pro, Ajustes y Costo por Suite

Gemini usa mejor el contexto del stack tecnológico, produciendo casos de integridad de datos específicos del ORM que los otros pasan por alto. Su debilidad es la disciplina Gherkin, así que añade “Given/When/Then estricto, sin preámbulo de texto libre” a la parte dos. Google lista Gemini 2.5 Pro en 1,25$ por millón de tokens de entrada hasta 200.000 tokens y 10$ por millón de salida.

Tarifas de API publicadas y la línea a añadir, a fecha de agosto de 2026
Modelo
Entrada, por 1M tokens
Salida, por 1M tokens
La línea a añadir a la parte dos
Modelo

Claude Sonnet 5

Entrada, por 1M tokens

$2.00

Salida, por 1M tokens

$10.00

La línea a añadir a la parte dos

Una línea por Given/When/Then, sin narrativa de apoyo

Modelo

GPT-4o

Entrada, por 1M tokens

$2.50

Salida, por 1M tokens

$10.00

La línea a añadir a la parte dos

Pega las seis lentes como una enumeración con viñetas, no un párrafo

Modelo

Gemini 2.5 Pro

Entrada, por 1M tokens

$1.25 (prompts hasta 200k)

Salida, por 1M tokens

$10.00

La línea a añadir a la parte dos

Given/When/Then estricto, sin preámbulo de texto libre

Los tres cobran los mismos 10$ por millón de tokens de salida, y una ejecución de dos pases está dominada por la salida, así que la calidad de la salida debería decidir la elección en lugar del precio. Lee los conteos reales de tokens de la respuesta de uso de cada API, y ten en cuenta que Anthropic señala un tokenizador que produce aproximadamente un 30% más de tokens para el mismo texto en los modelos más recientes.

El Paso de Revisión Humana

La pregunta que subyace a esta sección, formulada como se escribiría en un buscador, es si la IA puede reemplazar a los evaluadores manuales, y la respuesta honesta es no. El modelo redacta más rápido que cualquier humano, y un evaluador decide qué se lanza y añade los bordes de dominio que el modelo no puede conocer.

Los datos de la encuesta apoyan esa cautela. Stack Overflow reporta que el 46% de los desarrolladores desconfían activamente de la precisión de la salida de IA frente al 33% que confía en ella.

La Rúbrica de Puntuación de Tres Dimensiones (Ejecutabilidad, Unicidad, Valor)

Puntúa cada caso generado de 1 a 3 en tres dimensiones, luego elimina cualquier cosa por debajo de 6 de 9. Un 6 mantiene casos fuertes en dos dimensiones y débiles en una, y limpia el término medio que hace que las suites redactadas por IA se sientan infladas.

  • Ejecutabilidad. ¿Puede un evaluador ejecutar esto hoy con los datos que ya existen? Un fixture que nadie construyó puntúa 1.
  • Unicidad. ¿Cubre algo que ningún otro caso cubre? Los casi-duplicados se detectan aquí.
  • Valor. ¿Importa un fallo aquí? Un límite de inquilino roto puntúa 3, un tooltip desalineado en un idioma minúsculo puntúa 1.

Los Bordes de Dominio que Solo Detecta un Humano

Tres categorías reaparecen en cada revisión, y ninguna es deducible de un ticket. Reglas de negocio que viven en tickets de soporte, regresiones de sprints recientes de las que el modelo no tiene memoria, y casos límite específicos de una integración empresarial, como una API de socio que devuelve 200 con un cuerpo de error.

Aquí es donde un pase externalizado parece una función de QA en lugar de un servicio de transcripción. Aplica la misma disciplina de puntuación que nuestro proceso de pruebas manuales.

Lo que la Revisión Realmente Toma

Presupuesta la revisión explícitamente, porque es el paso que se recorta primero. En un lote de 40 historias, el bucle devuelve un par de cientos de casos en bruto, y la puntuación avanza a aproximadamente un caso cada quince segundos, así que planea que sobreviva más o menos la mitad y se envíen cerca de noventa en una hora. Trátalo como una estimación de alcance en lugar de un benchmark medido, y para tener una idea de en qué se convierte la suite mantenida, nuestro caso de estudio de Granola documenta más de 1.100 casos de prueba y el 76% de la suite de regresión automatizada en un producto de bloc de notas de IA.

Llevar los Casos a Jira, TestRail, o Xray sin un Pase de Reescritura

El formato de salida se eligió específicamente para esta sección. Una tabla Gherkin está a una transformación del importador incorporado de cada rastreador principal, y los tres caminos de abajo usan herramientas propias que la mayoría de los equipos ya tiene licenciadas.

Xray en Jira (Importador Cucumber)

Guarda los escenarios como archivos .feature y publícalos en el endpoint de importación de Xray en /api/v2/import/feature, que también acepta un zip. Las etiquetas de escenario se convierten en labels en el issue de Test creado, así que la columna de riesgo llega como @P0, y una etiqueta antes de la línea Feature enlaza el Test con un requisito de Jira existente. Xray señala que la descripción de Feature se omite en la importación.

TestRail (Importador CSV + Mapeo de Columnas)

Exporta la misma tabla a CSV y abre el diálogo Importar CSV desde la barra de herramientas del repositorio de casos de prueba. TestRail mapea columnas a campos de caso en el segundo paso y soporta mapeo de valores para desplegables, convirtiendo las cadenas P0/P1/P2 en valores de prioridad reales. Mantén un caso por fila para que aplique el diseño de fila única.

El mapeo que funciona: Title a Title, Given a Preconditions, When a Steps, Then a Expected Result, Risk a Priority, trazabilidad a References. Mapea cada campo requerido o el asistente no terminará.

Jira Nativo (ScriptRunner / Forge)

Sin Xray, crea cada caso como su propio issue enlazado a la historia. Un script de ScriptRunner recorre el CSV y crea los issues, y una app de Forge hace lo mismo a través de la API de enlace de issues de Jira Cloud, que Atlassian documenta como necesitando el alcance write:issue-link:jira.

Qué Omitir

Omite las plataformas de integración de IA a rastreador comercializadas para este traspaso. La salida del prompt ya es adyacente a CSV por diseño y cada importador de arriba es propio y está documentado, así que esa capa resuelve un problema que el formato de salida ya eliminó.

Cuándo un LLM Sencillo Deja de Ser Suficiente

Cuatro señales marcan el punto en el que el bucle deja de escalar, y suelen llegar juntas. Vigila estas en lugar de un conteo de palabras en tu documento de requisitos.

  • El corpus supera el contexto. Pasadas aproximadamente 500 historias, la trazabilidad entre sprints se convierte en el cuello de botella y una ventana de chat no puede ver lo que ya está cubierto.
  • El mantenimiento del prompt se convierte en un trabajo. Cuatro o más horas a la semana dedicadas a ajustar prompts pertenece a la comparación contra una licencia de plataforma.
  • El cumplimiento necesita un rastro de auditoría. Los alcances de SOC 2, HIPAA, e ISO 27001 quieren el modelo y la versión del prompt sellados en cada caso.
  • Las regresiones recientes siguen pasándose por alto. La generación de casos de prueba con prompts LLM no lleva memoria de los incidentes del último sprint, así que las mismas brechas reaparecen.

A partir de ahí, la elección se reduce a dos rutas: ejecutar los pases tú mismo en una plataforma construida a propósito, donde nuestra reseña de las mejores herramientas de pruebas de IA cubre el inventario agéntico, o entregar el pase a un equipo de QA que ya lo ejecuta, que es lo que cubren nuestros servicios de pruebas de IA, incluyendo soporte de ingeniería de prompts y revisión de la salida del LLM. Esa segunda ruta se cotiza como Tiempo y Material contra un alcance fijo, así que un primer lote es un gasto acotado.

Cuándo Termina el Bucle y Empieza el Sprint

El prompt de cuatro partes y el bucle de seis lentes llevan el primer borrador a ser ejecutable, y el pase de puntuación y la importación al rastreador lo meten en el sprint. Esos dos últimos pasos deciden si la suite se usa o se abandona silenciosamente.

Ejecútalo en una historia esta tarde y cuenta cuántos casos sobreviven a la puntuación. Ese número te dice más sobre tus requisitos que sobre el modelo, porque los criterios que producen relleno solían ser vagos desde el principio.

Un equipo de QA también puede ejecutar el bucle y llevar los casos a tu rastreador cada sprint. Si eso es un mejor uso de la semana de tus ingenieros, contáctanos y definiremos el alcance del primer lote contra tu backlog.

Preguntas Frecuentes

¿Cómo consigo que ChatGPT escriba buenos casos de prueba?

Dale las cuatro cosas que un prompt por defecto omite: el requisito más los criterios como lista con viñetas, un formato de salida explícito (una tabla Gherkin con columnas de riesgo y trazabilidad), una línea de rol que le diga que omita la cobertura que tu CI ya maneja, y barreras que limiten los casos por criterio.

Luego ejecuta un pase de crítica, pidiéndole que puntúe su propia salida contra seis clases de riesgo y devuelva solo lo que falta. Ese pase separa una lista que puedes ejecutar de una que simplemente se lee bien.

¿Cuál es el mejor prompt para generar casos de prueba con IA?

Una estructura de cuatro partes vence a cualquier frase ingeniosa: el bloque de entrada (requisito, criterios, contexto de stack tecnológico, clases de casos límite), la petición (una tabla Gherkin, una fila por caso, etiqueta de riesgo, columna de trazabilidad), una restricción de rol que omite las comprobaciones de humo que ya cubre el CI, y barreras que deduplican y limitan por criterio. Síguelo con un pase de crítica a través de seis clases de riesgo, y ten en cuenta que todo esto es un solo prompt copiable que no necesita registro.

¿Cómo convierto una historia de usuario en casos de prueba?

Pega el texto de la historia, sus criterios como lista con viñetas, y el contexto de tu stack (framework, modelo de autenticación, almacén de datos, alcance de idioma) en el prompt de cuatro partes. Ejecuta el pase de crítica para que el modelo audite su borrador contra autenticación, permisos, concurrencia, red, i18n, e integridad de datos, luego puntúa cada caso superviviente en ejecutabilidad, unicidad, y valor, eliminando cualquiera por debajo de 6 de 9.

¿Puede la IA escribir casos de prueba mejor que los humanos?

No. Un modelo redacta una suite más rápido que cualquier humano en solitario, y un evaluador es lo que hace que valga la pena ejecutarla, eliminando relleno, detectando casi-duplicados, y añadiendo bordes de dominio que el modelo nunca vio.

En un lote de 40 historias, espera que un par de cientos de casos en bruto se reduzcan a aproximadamente noventa enviados en cerca de una hora de puntuación. El emparejamiento vence a cualquiera de los dos lados por separado, por lo que la revisión pertenece a la estimación.

¿Funciona esto en Jira, TestRail, o Xray sin una reescritura?

Sí, a través de importadores propios en los tres. Xray toma el Gherkin como archivos .feature a través de su endpoint de importación Cucumber, donde las etiquetas de escenario se convierten en labels y una etiqueta a nivel de feature enlaza la prueba con su requisito.

TestRail toma la misma tabla como CSV a través de su asistente incorporado con mapeo de columnas y valores. Jira nativo crea cada caso como un issue de Test enlazado vía ScriptRunner o una app de Atlassian Forge sobre la API REST de Jira Cloud.

Mira cómo construimos y mantuvimos más de 1.100 casos de prueba para Granola, un bloc de notas de IA, y automatizamos el 76% de su suite de regresión

Por favor ingrese su correo electrónico comercial no es un correo electrónico comercial