38 lines
1.3 KiB
Markdown
38 lines
1.3 KiB
Markdown
---
|
|
name: bats-testing-patterns
|
|
description: "Master Bash Automated Testing System (Bats) for comprehensive shell script testing. Use when writing tests for shell scripts, CI/CD pipelines, or requiring test-driven development of shell utilities."
|
|
risk: unknown
|
|
source: community
|
|
date_added: "2026-02-27"
|
|
---
|
|
|
|
# Bats Testing Patterns
|
|
|
|
Comprehensive guidance for writing comprehensive unit tests for shell scripts using Bats (Bash Automated Testing System), including test patterns, fixtures, and best practices for production-grade shell testing.
|
|
|
|
## Use this skill when
|
|
|
|
- Writing unit tests for shell scripts
|
|
- Implementing TDD for scripts
|
|
- Setting up automated testing in CI/CD pipelines
|
|
- Testing edge cases and error conditions
|
|
- Validating behavior across shell environments
|
|
|
|
## Do not use this skill when
|
|
|
|
- The project does not use shell scripts
|
|
- You need integration tests beyond shell behavior
|
|
- The goal is only linting or formatting
|
|
|
|
## Instructions
|
|
|
|
- Confirm shell dialects and supported environments.
|
|
- Set up a test structure with helpers and fixtures.
|
|
- Write tests for exit codes, output, and side effects.
|
|
- Add setup/teardown and run tests in CI.
|
|
- If detailed examples are required, open `resources/implementation-playbook.md`.
|
|
|
|
## Resources
|
|
|
|
- `resources/implementation-playbook.md` for detailed patterns and examples.
|