Prompt para crear tests unitarios útiles a partir de código existente
Diseña tests unitarios con casos positivos, negativos y borde sin modificar la lógica original del código.
Generar tests no consiste en cubrir líneas al azar. Este prompt pide entender comportamiento esperado, dependencias, casos borde y riesgos antes de proponer pruebas.
Actúa como análisis de datos y desarrollador especializado en pruebas unitarias. Necesito diseñar tests que validen comportamiento real sin cambiar la lógica original. Contexto técnico: - lenguaje: JavaScript con Jest - código: función que calcula descuentos por tipo de cliente - comportamiento esperado: aplicar descuento solo si el usuario es elegible - casos conocidos: cliente nuevo, cliente premium, importe cero - restricciones técnicas: no usar dependencias externas Enfoque: 1. Resume qué hace el código y qué responsabilidades tiene. 2. Identifica entradas, salidas, dependencias y efectos secundarios. 3. Propón casos felices, casos borde, casos negativos y errores esperados. 4. Señala qué dependencias conviene mockear o aislar. 5. No cambies la lógica del código salvo que detectes un bug y lo expliques aparte. 6. Prioriza tests legibles y mantenibles sobre cobertura superficial. Entrega: - estrategia de pruebas. - lista de casos de test con nombre y propósito. - código de ejemplo para los tests si hay suficiente contexto. - datos de prueba recomendados. - riesgos o casos que faltan por conocer. - sugerencias para integrar estos tests en el flujo de trabajo. Control final: Cada test propuesto debe fallar si el comportamiento esperado se rompe. Antes de responder: - Si falta un dato crítico, haz hasta 3 preguntas de aclaración. - Si puedes avanzar con supuestos razonables, declara esos supuestos y continúa. - No inventes datos, cifras, políticas, experiencia, fuentes ni resultados. - Prioriza una respuesta útil, verificable y fácil de aplicar.
Personaliza el prompt
Completa los campos con datos genéricos o propios de tu caso. Si dejas un campo vacío, se usará el ejemplo seguro del campo para que el prompt no se rompa.
Versiones alternativas del prompt
Usa la versión corta para una respuesta rápida y la avanzada cuando necesites más control, criterios de calidad y revisión final.
Necesito crear tests unitarios con IA a partir de una función, clase o módulo de código. Datos que debes usar: - lenguaje: JavaScript con Jest - código: función que calcula descuentos por tipo de cliente - comportamiento esperado: aplicar descuento solo si el usuario es elegible - casos conocidos: cliente nuevo, cliente premium, importe cero - restricciones técnicas: no usar dependencias externas Entrega una respuesta breve, accionable y lista para revisar. Mantén el tono adecuado al contexto, no inventes datos y señala cualquier información crítica que falte antes de aplicar el resultado.
Actúa como análisis de datos y desarrollador especializado en pruebas unitarias. Necesito diseñar tests que validen comportamiento real sin cambiar la lógica original. Contexto técnico: - lenguaje: JavaScript con Jest - código: función que calcula descuentos por tipo de cliente - comportamiento esperado: aplicar descuento solo si el usuario es elegible - casos conocidos: cliente nuevo, cliente premium, importe cero - restricciones técnicas: no usar dependencias externas Enfoque: 1. Resume qué hace el código y qué responsabilidades tiene. 2. Identifica entradas, salidas, dependencias y efectos secundarios. 3. Propón casos felices, casos borde, casos negativos y errores esperados. 4. Señala qué dependencias conviene mockear o aislar. 5. No cambies la lógica del código salvo que detectes un bug y lo expliques aparte. 6. Prioriza tests legibles y mantenibles sobre cobertura superficial. Entrega: - estrategia de pruebas. - lista de casos de test con nombre y propósito. - código de ejemplo para los tests si hay suficiente contexto. - datos de prueba recomendados. - riesgos o casos que faltan por conocer. - sugerencias para integrar estos tests en el flujo de trabajo. Control final: Cada test propuesto debe fallar si el comportamiento esperado se rompe. Antes de responder: - Si falta un dato crítico, haz hasta 3 preguntas de aclaración. - Si puedes avanzar con supuestos razonables, declara esos supuestos y continúa. - No inventes datos, cifras, políticas, experiencia, fuentes ni resultados. - Prioriza una respuesta útil, verificable y fácil de aplicar. Modo avanzado: 1. Antes de redactar, separa datos confirmados, supuestos razonables y datos que faltan. 2. Adapta la respuesta al objetivo concreto: crear tests unitarios con IA a partir de una función, clase o módulo de código. 3. Explica el criterio que usaste para priorizar estructura, tono, profundidad y formato. 4. Entrega una versión principal y, cuando sea útil, una versión alternativa más breve o más práctica. 5. Añade una tabla de revisión con: decisión tomada, motivo, riesgo y cómo comprobarlo. 6. Incluye errores comunes específicos de esta tarea y cómo evitarlos. 7. Si detectas información insuficiente, haz hasta 3 preguntas; si puedes avanzar, declara los supuestos y continúa. 8. No inventes datos, cifras, fuentes, políticas, experiencia, funcionalidades ni resultados no aportados. 9. Usa únicamente la información proporcionada por estas variables: JavaScript con Jest, función que calcula descuentos por tipo de cliente, aplicar descuento solo si el usuario es elegible, cliente nuevo, cliente premium, importe cero, no usar dependencias externas. Formato avanzado de entrega: - resumen ejecutivo del enfoque. - resultado principal listo para usar. - versión alternativa o simplificada. - tabla de decisiones y riesgos. - puntos que conviene verificar manualmente. - checklist final antes de aplicar el resultado.
Adaptaciones para ChatGPT, Claude y Gemini
Estas variantes mantienen las mismas variables, pero ajustan la instrucción para aprovechar mejor el estilo de cada herramienta.
Usa ChatGPT para convertir estos datos en una respuesta estructurada, clara y lista para revisar. Objetivo: crear tests unitarios con IA a partir de una función, clase o módulo de código. Datos disponibles: - lenguaje: JavaScript con Jest - código: función que calcula descuentos por tipo de cliente - comportamiento esperado: aplicar descuento solo si el usuario es elegible - casos conocidos: cliente nuevo, cliente premium, importe cero - restricciones técnicas: no usar dependencias externas Instrucciones: 1. Mantén la respuesta fiel a la información aportada. 2. No inventes datos, cifras, experiencia, políticas ni resultados. 3. Usa un formato claro y aplicable al caso. 4. Señala dudas o datos insuficientes antes de presentar conclusiones. 5. Pide una salida por secciones, una versión breve y una lista final de puntos a comprobar. Entrega el resultado final listo para copiar o adaptar.
Usa Claude para trabajar el contexto con especial atención a matices, límites y coherencia editorial. Objetivo: crear tests unitarios con IA a partir de una función, clase o módulo de código. Datos disponibles: - lenguaje: JavaScript con Jest - código: función que calcula descuentos por tipo de cliente - comportamiento esperado: aplicar descuento solo si el usuario es elegible - casos conocidos: cliente nuevo, cliente premium, importe cero - restricciones técnicas: no usar dependencias externas Instrucciones: 1. Mantén la respuesta fiel a la información aportada. 2. No inventes datos, cifras, experiencia, políticas ni resultados. 3. Usa un formato claro y aplicable al caso. 4. Señala dudas o datos insuficientes antes de presentar conclusiones. 5. Pide que diferencie hechos aportados, supuestos razonables y datos que faltan antes de redactar. Entrega el resultado final listo para copiar o adaptar.
Usa Gemini para organizar la respuesta, comparar opciones y mantener una estructura fácil de seguir. Objetivo: crear tests unitarios con IA a partir de una función, clase o módulo de código. Datos disponibles: - lenguaje: JavaScript con Jest - código: función que calcula descuentos por tipo de cliente - comportamiento esperado: aplicar descuento solo si el usuario es elegible - casos conocidos: cliente nuevo, cliente premium, importe cero - restricciones técnicas: no usar dependencias externas Instrucciones: 1. Mantén la respuesta fiel a la información aportada. 2. No inventes datos, cifras, experiencia, políticas ni resultados. 3. Usa un formato claro y aplicable al caso. 4. Señala dudas o datos insuficientes antes de presentar conclusiones. 5. Pide que marque elementos que deban verificarse manualmente si dependen de información externa o cambiante. Entrega el resultado final listo para copiar o adaptar.
Para qué sirve este prompt
- Funciones o clases con lógica de negocio.
- Bugs que quieres cubrir para que no vuelvan.
- Código legacy donde necesitas pruebas antes de refactorizar.
Caso de uso
Código: función JavaScript que calcula descuentos por tipo de cliente, importe y cupón. Restricción: Jest, sin dependencias externas.
Qué deberías obtener
Deberías recibir una batería de tests con casos felices, negativos y borde, nombres descriptivos, datos de prueba, supuestos explícitos y explicación de qué comportamiento cubre cada test.
Cómo usarlo paso a paso
- Pega la función completa y el framework de pruebas que usas.
- Aclara reglas de negocio que no se ven en el código.
- Ejecuta los tests y vuelve a pegar errores si fallan.
Consejos de uso
- Para ChatGPT, pide primero la lista de casos antes del código.
- Para Claude, funciona muy bien con módulos largos.
- Para Gemini, revisa imports y sintaxis del framework.
Errores comunes
- Pedir tests sin explicar comportamiento esperado.
- Aceptar tests que prueban detalles internos frágiles.
- No incluir casos de error o entradas inválidas.
Checklist antes de usar el resultado
- Los tests cubren comportamiento, no implementación accidental.
- Incluye casos borde y negativos.
- Explica qué no se puede testear con el contexto dado.
Cómo adaptarlo mejor
- Indica framework de pruebas de software y versión si importa.
- Aclara dependencias externas que deben mockearse.
- Pide nombres de tests descriptivos para mejorar mantenimiento.
Búsquedas relacionadas
Prompts relacionados
Diagnostica errores con hipótesis, pasos de reproducción, causa probable y solución mínima explicada.
Excel y datosCrear fórmula de Excel o Google SheetsConvierte una necesidad de hoja de cálculo en una fórmula explicada, adaptable y revisable antes de usarla.
Excel y datosLimpiar datos en ExcelCrea un plan de limpieza para tablas desordenadas con reglas, fórmulas, controles y advertencias.
Preguntas frecuentes
¿Puede crear tests para cualquier lenguaje?
Puede ayudar en muchos lenguajes, pero debes indicar framework, dependencias y comportamiento esperado.
¿Conviene pegar todo el archivo?
Mejor pega la unidad que quieres probar y el contexto mínimo necesario.