/test-plan
Usar para generar un plan de testing priorizado por riesgo. También: plan de testing, qué probar, priorizar tests por riesgo, estrategia de testing, cobertura de tests.
$ npx -y skills add 686f6c61/alfred-dev --skill test-plan --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.
- You can call itInvoke it directly when you want it.
- Slash command
/test-plan
Context preview
The summary Claude sees to decide when to auto-load this skill.
Usar para generar un plan de testing priorizado por riesgo. También: plan de testing, qué probar, priorizar tests por riesgo, estrategia de testing, cobertura de tests.
SKILL.md
test-plan.SKILL.mdname: test-plan
description: "Usar para generar un plan de testing priorizado por riesgo. También: plan de testing, qué probar, priorizar tests por riesgo, estrategia de testing, cobertura de tests."
Generar plan de testing
Resumen
Este skill produce un plan de testing estructurado y priorizado por riesgo. No se trata de probar todo con la misma intensidad, sino de concentrar el esfuerzo donde más impacto tiene: las áreas críticas del sistema que, si fallan, causan mayor daño al usuario o al negocio.
El plan cubre desde tests unitarios hasta tests end-to-end, pasando por integración, edge cases y escenarios negativos. El resultado es un documento accionable que guía el esfuerzo de testing.
Proceso
1. **Identificar el alcance.** Definir qué se va a probar: una feature nueva, un módulo refactorizado, el sistema completo, o un área específica. El alcance determina la profundidad del plan.
2. **Analizar el riesgo de cada área.** Para cada componente o funcionalidad, evaluar:
- **Impacto del fallo:** qué pasa si esta parte falla (pérdida de datos, caída del servicio, mala experiencia de usuario, etc.).
- **Probabilidad de fallo:** complejidad del código, frecuencia de cambios, historial de bugs.
- **Visibilidad:** si el fallo es visible para el usuario o silencioso.
Clasificar cada área como crítica, alta, media o baja prioridad de testing.
3. **Definir las categorías de tests:**
- **Unitarios:** funciones individuales aisladas de sus dependencias. Rápidos, abundantes, cubren lógica de negocio y casos límite.
- **Integración:** interacción entre módulos o con servicios externos (base de datos, APIs). Verifican que las piezas encajan.
- **End-to-end (e2e):** flujos completos desde la perspectiva del usuario. Pocos pero críticos. Cubren los happy paths más importantes.
- **Edge cases:** valores límite, inputs vacíos, unicode, números negativos, listas gigantes.
- **Escenarios negativos:** qué pasa cuando las cosas van mal (red caída, base de datos llena, permisos insuficientes, timeout).
4. **Asignar prioridad a cada test:**
| Prioridad | Criterio | Ejemplo | |-----------|----------|---------| | Crítica | Fallo = pérdida de datos o dinero | Test de transacciones, test de backup | | Alta | Fallo = servicio no disponible | Test de autenticación, test de endpoints principales | | Media | Fallo = mala experiencia de usuario | Test de validación de formularios, test de paginación | | Baja | Fallo = molestia menor | Test de formato de fecha, test de ordenación |
5. **Estimar el esfuerzo.** Para cada grupo de tests, estimar el tiempo necesario para escribirlos. Esto ayuda a planificar sprints y a negociar alcance si hay restricciones de tiempo.
6. **Documentar el plan.** Utilizar `templates/test-plan.md` si existe. El documento debe ser una referencia viva que se actualiza conforme el proyecto evoluciona.
Criterios de éxito
- Cada área del sistema tiene un nivel de riesgo asignado.
- Los tests están categorizados (unitario, integración, e2e, edge case, negativo).
- Las prioridades reflejan el impacto real del fallo, no la facilidad de escribir el test.
- El esfuerzo está estimado para permitir planificación.
- El plan cubre escenarios positivos, negativos y edge cases para las áreas críticas.
- Las decisiones de estrategia de testing se han registrado en la memoria del proyecto.
Paso de memoria
Registrar las decisiones de estrategia de testing en la memoria del proyecto con `memory_log_decision`. Esto incluye qué áreas se han priorizado, qué se ha descartado y por qué, para que el plan se mantenga coherente entre sesiones.
Referencia al stack
Consultar el stack detectado en la configuración de Alfred para seleccionar automáticamente el framework de testing adecuado (Jest, Vitest, pytest, etc.) y adaptar las recomendaciones al ecosistema del proyecto.
Qué NO hacer
- No priorizar tests por facilidad de escritura. Priorizar por riesgo e impacto del fallo, que es el criterio que realmente protege al usuario.
- No planificar tests E2E para todo. Los tests E2E son lentos y frágiles; reservarlos para flujos críticos y cubrir el resto con tests unitarios y de integración.
- No generar un plan de testing sin conocer el código. El plan debe basarse en la arquitectura real, no en una plantilla genérica.
- No ignorar los tests negativos y de edge cases. Los happy paths se prueban solos; los bugs viven en los caminos inesperados.
Read more
name: test-plan description: "Usar para generar un plan de testing priorizado por riesgo. También: plan de testing, qué probar, priorizar tests por riesgo, estrategia de testing, cobertura de tests."
Generar plan de testing
Resumen
Este skill produce un plan de testing estructurado y priorizado por riesgo. No se trata de probar todo con la misma intensidad, sino de concentrar el esfuerzo donde más impacto tiene: las áreas críticas del sistema que, si fallan, causan mayor daño al usuario o al negocio.
El plan cubre desde tests unitarios hasta tests end-to-end, pasando por integración, edge cases y escenarios negativos. El resultado es un documento accionable que guía el esfuerzo de testing.
Proceso
1. **Identificar el alcance.** Definir qué se va a probar: una feature nueva, un módulo refactorizado, el sistema completo, o un área específica. El alcance determina la profundidad del plan.
2. **Analizar el riesgo de cada área.** Para cada componente o funcionalidad, evaluar:
- **Impacto del fallo:** qué pasa si esta parte falla (pérdida de datos, caída del servicio, mala experiencia de usuario, etc.).
- **Probabilidad de fallo:** complejidad del código, frecuencia de cambios, historial de bugs.
- **Visibilidad:** si el fallo es visible para el usuario o silencioso.
Clasificar cada área como crítica, alta, media o baja prioridad de testing.
3. **Definir las categorías de tests:**
- **Unitarios:** funciones individuales aisladas de sus dependencias. Rápidos, abundantes, cubren lógica de negocio y casos límite.
- **Integración:** interacción entre módulos o con servicios externos (base de datos, APIs). Verifican que las piezas encajan.
- **End-to-end (e2e):** flujos completos desde la perspectiva del usuario. Pocos pero críticos. Cubren los happy paths más importantes.
- **Edge cases:** valores límite, inputs vacíos, unicode, números negativos, listas gigantes.
- **Escenarios negativos:** qué pasa cuando las cosas van mal (red caída, base de datos llena, permisos insuficientes, timeout).
4. **Asignar prioridad a cada test:**
| Prioridad | Criterio | Ejemplo | |-----------|----------|---------| | Crítica | Fallo = pérdida de datos o dinero | Test de transacciones, test de backup | | Alta | Fallo = servicio no disponible | Test de autenticación, test de endpoints principales | | Media | Fallo = mala experiencia de usuario | Test de validación de formularios, test de paginación | | Baja | Fallo = molestia menor | Test de formato de fecha, test de ordenación |
5. **Estimar el esfuerzo.** Para cada grupo de tests, estimar el tiempo necesario para escribirlos. Esto ayuda a planificar sprints y a negociar alcance si hay restricciones de tiempo.
6. **Documentar el plan.** Utilizar `templates/test-plan.md` si existe. El documento debe ser una referencia viva que se actualiza conforme el proyecto evoluciona.
Criterios de éxito
- Cada área del sistema tiene un nivel de riesgo asignado.
- Los tests están categorizados (unitario, integración, e2e, edge case, negativo).
- Las prioridades reflejan el impacto real del fallo, no la facilidad de escribir el test.
- El esfuerzo está estimado para permitir planificación.
- El plan cubre escenarios positivos, negativos y edge cases para las áreas críticas.
- Las decisiones de estrategia de testing se han registrado en la memoria del proyecto.
Paso de memoria
Registrar las decisiones de estrategia de testing en la memoria del proyecto con `memory_log_decision`. Esto incluye qué áreas se han priorizado, qué se ha descartado y por qué, para que el plan se mantenga coherente entre sesiones.
Referencia al stack
Consultar el stack detectado en la configuración de Alfred para seleccionar automáticamente el framework de testing adecuado (Jest, Vitest, pytest, etc.) y adaptar las recomendaciones al ecosistema del proyecto.
Qué NO hacer
- No priorizar tests por facilidad de escritura. Priorizar por riesgo e impacto del fallo, que es el criterio que realmente protege al usuario.
- No planificar tests E2E para todo. Los tests E2E son lentos y frágiles; reservarlos para flujos críticos y cubrir el resto con tests unitarios y de integración.
- No generar un plan de testing sin conocer el código. El plan debe basarse en la arquitectura real, no en una plantilla genérica.
- No ignorar los tests negativos y de edge cases. Los happy paths se prueban solos; los bugs viven en los caminos inesperados.
Plugin de Claude Code: 18 agentes especializados, 60 skills, 25 comandos, 13 hooks, memoria persistente, Memory UI local, quality gates, evidence guard, continuidad operativa y modo autopilot.
Repo: 686f6c61/alfred-dev
Other skills on alfred-dev.
- /alfred
Alias global /alfred para abrir el asistente contextual de Alfred Dev sin escribir el namespace completo. Activar solo cuando el usuario invoque explicitamente /alfred.
Open skill - /choose-stack
Usar para evaluar y elegir tecnologías con matriz de decisión ponderada. Activar cuando el usuario quiera elegir tecnología, comparar frameworks, decidir entre alternativas técnicas, construir una matriz de decisión, evaluar stack, seleccionar base de datos, elegir lenguaje o
Open skill - /design-system
Usar para diseñar la arquitectura de un sistema con diagramas y contratos. Activar cuando el usuario quiera diseñar arquitectura, definir componentes del sistema, crear un diagrama de flujo, establecer contratos entre módulos, planificar la estructura del proyecto o decidir cómo
Open skill - /evaluate-dependencies
Usar para evaluar si una dependencia merece la pena antes de añadirla. Activar cuando el usuario quiera añadir una librería, saber si merece la pena esta dependencia, evaluar un paquete antes de instalarlo, hacer npm install o pip install de algo nuevo, buscar alternativas a una
Open skill - /write-adr
Usar para documentar decisiones arquitectónicas como ADR. Activar cuando el usuario quiera documentar por qué se tomó una decisión, registrar alternativas descartadas, crear un ADR, un decision record, dejar constancia de una elección técnica o justificar una decisión de diseño
Open skill - /code-review
Usar para revisar código con foco en calidad, legibilidad y errores lógicos. También: revisar código, buscar errores, calidad del código, revisión de PR, pull request review.
Open skill

