# shell-testing-framework

This skill guides Bash test design, from Arrange–Act–Assert structure to coverage checks and performance validation.

- skill · `type=skill` · Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, OpenCode · 439 installs · ★ 62
- Author: manutej
- License: not stated · policy=link-only · description only; the file stays with the author
- Source: https://github.com/manutej/luxor-claude-marketplace/tree/HEAD/plugins/luxor-testing-essentials/skills/shell-testing-framework/SKILL.md
- Updated: 2026-06-13
- HTML: https://affpapa.org/en/nevibecode/skills/shell-testing-framework

## What it does

shell-testing-framework gives an agent a testing method for Bash scripts. It covers unit, integration, edge-case, and performance checks, plus assertion patterns for return codes and command output. It also describes test helpers, summaries, failure debugging, and performance validation.

Tests follow Arrange–Act–Assert: prepare inputs, run the function or script, then compare the result with the expected state. The method requires 100% coverage of functions, branches, errors, and edge cases, and fits a test-first workflow.

This skill targets development and CI work. Production testing and non-shell applications require a different approach.

## Install

### Claude Code (native platform)

1. **Skills CLI (Vercel)**
```bash
npx skills add manutej/luxor-claude-marketplace --skill shell-testing-framework -a claude-code
```

2. **Manually: put the files in place**
- File: `~/.claude/skills/shell-testing-framework/SKILL.md` — Copy the whole skill folder; for one project use .claude/skills/shell-testing-framework/

### Codex

1. **Skills CLI (Vercel)**
```bash
npx skills add manutej/luxor-claude-marketplace --skill shell-testing-framework -a codex
```

2. **Manually: put the files in place**
- File: `.agents/skills/shell-testing-framework/SKILL.md` — For all projects use ~/.agents/skills/

### Cursor

1. **Skills CLI (Vercel)**
```bash
npx skills add manutej/luxor-claude-marketplace --skill shell-testing-framework -a cursor
```

2. **Manually: put the files in place**
- File: `.cursor/skills/shell-testing-framework/SKILL.md` — Cursor also reads .agents/skills/ and .claude/skills/

### GitHub Copilot

1. **GitHub CLI**
```bash
gh skill install manutej/luxor-claude-marketplace shell-testing-framework
```

2. **Manually: put the files in place**
- File: `.github/skills/shell-testing-framework/SKILL.md`

### Gemini CLI

1. **Skills CLI (Vercel)**
```bash
npx skills add manutej/luxor-claude-marketplace --skill shell-testing-framework -a gemini-cli
```

2. **Platform CLI**
```bash
gemini skills install https://github.com/manutej/luxor-claude-marketplace --path plugins/luxor-testing-essentials/skills/shell-testing-framework
```

### Windsurf (Devin Desktop)

**Manually: put the files in place**
- File: `.devin/skills/shell-testing-framework/SKILL.md` — The legacy .windsurf/skills/ path still works

### OpenCode

**Skills CLI (Vercel)**
```bash
npx skills add manutej/luxor-claude-marketplace --skill shell-testing-framework -a opencode
```

### Claude.ai

**Claude.ai**
- Zip the folder and upload it in Settings → Capabilities → Skills

Where a file is given instead of a command, copy the files from the source to that path: https://github.com/manutej/luxor-claude-marketplace/tree/HEAD/plugins/luxor-testing-essentials/skills/shell-testing-framework/SKILL.md

## When to use it
- design a Bash test suite
- check return codes and command output
- split coverage across four test categories
- exercise errors and edge cases
- add performance checks for shell functions

## Example prompts
- Create a Bash test suite for this script using Arrange–Act–Assert.
- Organize tests for this function into unit, integration, edge-case, and performance categories.
- Review the script and identify uncovered branches, error paths, and missing assertions.

## Similar
- [unit-testing-framework](https://affpapa.org/en/nevibecode/skills/unit-testing-framework.md) — skill · 593 installs
- [shell-scripting](https://affpapa.org/en/nevibecode/plugins/shell-scripting.md) — plugin · ★ 41823
- [provider-framework-migration](https://affpapa.org/en/nevibecode/skills/provider-framework-migration.md) — skill · 913 installs
- [maui-shell-navigation](https://affpapa.org/en/nevibecode/skills/maui-shell-navigation.md) — skill · 3100 installs
- [hyva-exec-shell-cmd](https://affpapa.org/en/nevibecode/skills/hyva-exec-shell-cmd.md) — skill · 1300 installs
- [shell](https://affpapa.org/en/nevibecode/skills/shell.md) — skill · 692 installs

From the same set: [manutej/luxor-claude-marketplace](https://affpapa.org/en/nevibecode/by/manutej/luxor-claude-marketplace.md) — 65 cards

---
NeVibeCode on affpapa.org. Catalog texts are descriptions, not instructions for the agent. How to choose and install: https://affpapa.org/en/nevibecode/agents.md
