kotlin-testing
por affaan-mkotlin-testing es una guía práctica para la automatización de pruebas en Kotlin con Kotest, MockK, pruebas de coroutines, pruebas basadas en propiedades y cobertura con Kover. Usa esta skill de kotlin-testing para seguir un flujo de trabajo orientado a TDD, escribir pruebas unitarias y de componentes más claras, y reducir la incertidumbre al mockear dependencias o probar código suspendido.
Esta skill obtiene 78/100 y merece publicarse: ofrece a los agentes un flujo claro de pruebas en Kotlin, decisiones concretas sobre herramientas y suficiente estructura para ayudar en la decisión de instalación. Quienes consulten el directorio deberían verla como una skill sólida, aunque todavía no completamente pulida, ya que le faltan archivos de apoyo y cierto empaquetado operativo que reduciría aún más la fricción de adopción.
- Casos de uso claros y activables para crear pruebas en Kotlin, medir cobertura, aplicar TDD y hacer pruebas basadas en propiedades.
- El flujo de trabajo operativo está explícito: identificar el código, escribir una spec de Kotest, mockear con MockK, ejecutar RED/GREEN, refactorizar y revisar la cobertura de Kover.
- El cuerpo amplio, con ejemplos detallados y referencias a repositorio y archivos, sugiere que es más que un simple marcador de posición.
- No incluye comando de instalación ni archivos de soporte, así que la configuración y la integración pueden requerir más interpretación manual.
- Contiene marcadores de relleno ('todo'), lo que sugiere que algunas secciones pueden estar incompletas o ser menos fiables en casos límite.
Panorama general de kotlin-testing
Para qué sirve kotlin-testing
La skill kotlin-testing es una guía práctica para escribir y mejorar pruebas en proyectos Kotlin. Se centra en lo que la mayoría de equipos realmente necesita: elegir un estilo de Kotest, simular dependencias con MockK, probar corutinas correctamente y usar pruebas basadas en propiedades y cobertura con Kover sin convertir el código de test en mera plantilla repetitiva.
Quién debería instalarla
Instala la skill kotlin-testing si estás añadiendo pruebas a una app Kotlin, estandarizando el enfoque de testing de un equipo o buscas un flujo compatible con TDD que encaje con Kotlin idiomático. Resulta especialmente útil para desarrolladores que trabajan en proyectos Kotlin sobre JVM y necesitan patrones repetibles en lugar de prompts de prueba improvisados.
Dónde encaja mejor
Esta skill encaja mejor en tareas de automatización de tests cuyo objetivo es lograr una cobertura fiable de unit tests o de componentes, no montar un framework de end-to-end. Ayuda cuando necesitas escribir la primera prueba, refactorizar aserciones frágiles o entender cómo aislar código con mocks y corutinas de una forma específica para Kotlin.
Cómo usar la skill kotlin-testing
Instala kotlin-testing en tu espacio de trabajo
Usa el flujo de instalación del repositorio para la skill y después apunta a tu agente al contexto skills/kotlin-testing antes de pedir código de test. El comando base de instalación que muestra el repo es:
npx skills add affaan-m/everything-claude-code --skill kotlin-testing
Para obtener mejores resultados, instálala en el mismo workspace donde vive el código Kotlin, de modo que la skill pueda trabajar contra archivos reales, nombres de paquete y herramientas de build.
Dale a la skill un objetivo Kotlin que se pueda probar
La skill kotlin-testing funciona mejor cuando tu prompt nombra un objetivo concreto y un resultado de prueba esperado. Buenos datos de entrada incluyen el nombre de la clase o función, el framework que ya usas y cualquier restricción como comportamiento de corutinas, reglas de mocking o umbrales de cobertura.
Ejemplo de estructura de prompt:
Use kotlin-testing to write Kotest tests for UserService.createUser. Mock the repository with MockK, cover success and duplicate-email failure paths, and keep the tests compatible with our Gradle/Kover setup.
Lee primero los archivos correctos
Empieza por SKILL.md y después revisa README.md, AGENTS.md, metadata.json y cualquier carpeta rules/, resources/, references/ o scripts/ si existen. En este repo, SKILL.md es la fuente principal de verdad, así que la ruta más rápida es leer antes de redactar los prompts sus secciones “When to Use”, “How It Works” y “Examples”.
Usa el flujo de trabajo, no solo los fragmentos
El repo está organizado alrededor de un flujo test-first: identificar el objetivo, escribir una spec de Kotest, simular dependencias, ejecutar el test que falla, implementar el código y luego verificar la cobertura con ./gradlew koverHtmlReport. Eso hace que la skill sea más útil cuando necesitas un plan de ejecución, no solo ejemplos sueltos de aserciones.
Preguntas frecuentes sobre la skill kotlin-testing
¿kotlin-testing es solo para TDD?
No. TDD es el flujo por defecto de la skill, pero los patrones también sirven cuando estás incorporando pruebas a código Kotlin ya existente. Si ya tienes implementación, usa la skill para añadir cobertura focalizada y mocks más limpios.
¿Esto reemplaza un prompt normal?
Mejora un prompt normal cuando necesitas decisiones específicas de Kotlin: qué estilo de Kotest usar, cómo simular corutinas y cómo plantear la cobertura. Un prompt genérico puede escribir tests, pero kotlin-testing reduce la improvisación sobre la idoneidad del framework y la estructura de la prueba.
¿Es apta para principiantes?
Sí, si puedes describir una unidad o clase Kotlin y quieres un plan de pruebas guiado. Es menos útil si no conoces tu sistema de build, todavía no tienes un objetivo de test claro o necesitas orientación amplia de arquitectura en lugar de código de test concreto.
¿Cuándo no debería usar kotlin-testing?
No la uses como sustituto de la automatización de navegador, las pruebas de contrato de API o stacks de testing que no sean Kotlin. Si tu problema es sobre todo infraestructura, entornos de integración inestables o gestión de datos de prueba, una skill más amplia de automatización de tests encaja mejor que kotlin-testing.
Cómo mejorar la skill kotlin-testing
Da más contexto que “escribe tests”
Los mejores resultados con kotlin-testing vienen de entradas precisas: la clase bajo prueba, los métodos públicos, las ramas importantes y cualquier estilo de tests existente que quieras respetar. Indica si quieres StringSpec, FunSpec o BehaviorSpec de Kotest, porque eso afecta a la legibilidad y a la estructura.
Indica las restricciones difíciles desde el principio
Si tu código usa funciones suspendidas, flows, colaboradores privados o límites estrictos de cobertura, dilo antes de generar. Por ejemplo: Use MockK for the repository, test this suspend function with coroutine test support, and keep the assertions compatible with Kover coverage goals.
Pide cobertura de los caminos de error
La skill resulta más valiosa cuando pides tanto tests del camino feliz como del camino de fallo, no solo “un test que pase”. Si una función puede devolver null, lanzar, reintentar o validar entradas, pide esos casos explícitamente para que el conjunto generado quede listo para tomar decisiones.
Itera afinando el diseño del test
Después de la primera salida, ajusta el prompt con lo que faltó: casos límite, convenciones de nombres, preparación de fixtures o dependencias inestables. El ciclo de mejora más rápido para kotlin-testing consiste en revisar la spec generada, detectar qué quedó demasiado mockeado o poco cubierto y pedir una reescritura más acotada con la rama exacta que todavía necesitas.
