Habilidades bats-testing-patterns
🧪

bats-testing-patterns

Seguro

Escribir Pruebas Robustas para Scripts de Shell con BATS

También disponible en: wshobson

Aprende patrones integrales de pruebas BATS para escribir pruebas mantenibles y confiables para scripts de shell en pipelines de CI/CD.

Soporta: Claude Codex Code(CC)
🥉 72 Bronce
1

Descargar el ZIP de la skill

2

Subir en Claude

Ve a Configuración → Capacidades → Skills → Subir skill

3

Activa y empieza a usar

Pruébalo

Usando "bats-testing-patterns". Escribir pruebas para un script que procesa archivos CSV

Resultado esperado:

  • Un archivo de prueba BATS con pruebas para existencia de archivo, validación de contenido, manejo de errores para CSV malformado y casos de éxito

Usando "bats-testing-patterns". ¿Cómo pruebo que mi script falla correctamente con entrada inválida?

Resultado esperado:

  • Ejemplo mostrando bloques @test para argumentos faltantes, opciones inválidas, escenarios de permiso denegado y aserción de mensajes de error

Usando "bats-testing-patterns". Configurar pruebas para una herramienta CLI con múltiples comandos

Resultado esperado:

  • Estructura de pruebas con funciones auxiliares, configuración de fixtures, limpieza de teardown y pruebas para salida de ayuda, flag de versión y ejecución de comando principal

Auditoría de seguridad

Seguro
v1 • 2/25/2026

This skill provides documentation and examples for writing BATS tests. All 91 static findings are false positives: external commands are code examples in markdown, network URLs are documentation links, filesystem patterns are legitimate test setup patterns, and weak crypto detection is a false positive due to 'Bats' being misidentified as a cryptographic reference.

2
Archivos escaneados
652
Líneas analizadas
0
hallazgos
1
Auditorías totales
No se encontraron problemas de seguridad
Auditado por: claude

Puntuación de calidad

38
Arquitectura
100
Mantenibilidad
87
Contenido
32
Comunidad
100
Seguridad
100
Cumplimiento de la especificación

Lo que puedes crear

Ingeniero DevOps Probando Scripts de Infraestructura

Escribe pruebas automatizadas para scripts de despliegue, scripts de gestión de configuración y automatización de infraestructura para garantizar confiabilidad.

Desarrollador Añadiendo Pruebas a Utilidades de Shell

Implementa desarrollo dirigido por pruebas para herramientas CLI y utilidades de shell para detectar regresiones tempranamente.

Equipo Estableciendo Estándares de Calidad para Scripts de Shell

Configura patrones integrales de pruebas y mejores prácticas en todo un equipo para mantener una calidad de código consistente.

Prueba estos prompts

Creación Básica de Pruebas
Crea un archivo de prueba BATS para mi script de shell en script.sh que pruebe el código de salida y la salida de la función principal.
Pruebas con Fixtures
Escribe pruebas BATS que usen archivos fixture del directorio tests/fixtures/ para probar funciones de procesamiento de archivos.
Simulación de Comandos Externos
Muéstrame cómo crear un stub del comando 'curl' en BATS para probar una función de API sin hacer peticiones de red reales.
Integración CI/CD
Crea un workflow de GitHub Actions y un Makefile para ejecutar pruebas BATS en CI/CD con salida TAP.

Mejores prácticas

  • Usa nombres de pruebas descriptivos que indiquen claramente qué se está probando y el comportamiento esperado
  • Siempre limpia archivos temporales y recursos en funciones de teardown para prevenir contaminación de pruebas
  • Simula dependencias externas como llamadas a API y operaciones del sistema de archivos para aislar pruebas unitarias

Evitar

  • Probar múltiples aserciones no relacionadas en una sola función de prueba viola la responsabilidad única
  • Omitir teardown o limpieza conduce a pruebas inestables y fugas de recursos
  • Probar detalles de implementación en lugar de comportamiento observable hace que las pruebas sean frágiles

Preguntas frecuentes

¿Qué es BATS?
BATS (Bash Automated Testing System) es un framework de pruebas para scripts de shell que proporciona salida compatible con TAP y sintaxis de prueba simple.
¿Cómo instalo BATS?
Instala vía Homebrew (brew install bats-core), npm (npm install --global bats), o clona desde GitHub y ejecuta el script de instalación.
¿Cuál es la diferencia entre setup y setup_file?
setup() se ejecuta antes de cada prueba, mientras que setup_file() se ejecuta una vez antes de todas las pruebas en un archivo. Usa setup_file para recursos compartidos costosos.
¿Cómo pruebo que un comando falla?
Usa 'run' para ejecutar el comando, luego afirma que $status es distinto de cero y opcionalmente verifica la salida de error.
¿Puedo probar scripts que usan comandos externos?
Sí, usa mock de funciones con 'export -f' o stub de comandos creando ejecutables mock en un directorio PATH temporal.
¿Cómo ejecuto pruebas en paralelo?
Usa el flag --parallel con bats, por ejemplo: bats tests/*.bats --parallel 4

Detalles del desarrollador

Estructura de archivos