# Bats Testing Patterns

Master Bash Automated Testing System (Bats) for comprehensive shell script testing.

- Repository: https://github.com/rmyndharis/antigravity-skills (1913 stars)
- Category: Testing
- License: MIT
- Last updated: 2026-10-14
- Runs scripts: no, instructions only

## Install

Claude Code: `npx skills add rmyndharis/antigravity-skills --skill bats-testing-patterns -g -a claude-code -y`
Codex: `npx skills add rmyndharis/antigravity-skills --skill bats-testing-patterns -g -a codex -y`
Cursor: `npx skills add rmyndharis/antigravity-skills --skill bats-testing-patterns -g -a cursor -y`
Gemini CLI: `npx skills add rmyndharis/antigravity-skills --skill bats-testing-patterns -g -a gemini-cli -y`

## 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.

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

# 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.

