mcpbeat Sign in

Go Testing Agent Skill

Trigger: Go tests, go test coverage, Bubbletea teatest, golden files. Apply focused Go testing patterns.

550 tokens
context cost
SKILL.md, read when the skill is used
2
files
plus fonts, images or templates
0
copies elsewhere
how many repositories repackaged it
6 287
stars on the repo
on the repository, not the skill itself

Install

one command, takes just this skill from the repository
npx skills add https://github.com/Gentleman-Programming/gentle-ai --skill go-testing

What comes with it

2 045 bytes besides the instruction
references/examples.md

The instruction itself

6 sections, as written by the author

Activation Contract

Load this skill when writing or reviewing Go tests, adding coverage, testing Bubbletea/TUI flows, using teatest, or updating golden files.

Hard Rules

  • Prefer table-driven tests for multiple cases; use t.Run(tt.name, ...).
  • Test behavior and state transitions, not implementation trivia.
  • Use t.TempDir() for filesystem tests; never rely on a real home directory.
  • Keep integration tests skippable with testing.Short() when they run external commands or slow flows.
  • For Bubbletea, test Model.Update() directly for state changes; use teatest only for interactive flows.
  • Golden files must be deterministic; update only through the repo's -update path and rerun tests without -update.
  • Use small mocks/interfaces around system or command execution boundaries.

Decision Gates

| Target | Test pattern |

|---|---|

| Pure function or parser | Table-driven unit test. |

| Error behavior | Explicit success and failure cases. |

| File operations | t.TempDir() plus focused assertions. |

| TUI state transition | Direct Model.Update() call with tea.Msg. |

| Full TUI interaction | teatest.NewTestModel(). |

| Rendered output | Golden file test. |

| Real external command | Integration test; skip in -short. |

Execution Steps

  • Identify behavior under test and the smallest public boundary that proves it.
  • Choose the test pattern from the decision gate.
  • Name cases by scenario, not input mechanics.
  • Assert outputs, errors, state, and side effects explicitly.
  • Run the narrow package test first, then the relevant broader suite.
  • For golden updates: run with -update, inspect diff, then rerun without -update.

Output Contract

Report test files changed, scenarios covered, commands executed, golden files updated, and any skipped integration scope.

References

  • references/examples.md — compact table-driven, Bubbletea, teatest, golden, and command examples.

How to use it

Copy the folder

Take gentleman-programming/go-testing from the repository into ~/.claude/skills for personal use, or into .claude/skills inside a project.

Check the name does not clash

The agent identifies a skill by the name field in its header. Two skills with the same name cannot sit side by side — one of them will be ignored.