CtrlK
BlogDocsLog inGet started
Tessl Logo

golang-stretchr-testify

Comprehensive guide to stretchr/testify for Golang testing. Covers assert, require, mock, and suite packages in depth. Use when writing tests with testify, creating mocks, setting up test suites, or choosing between assert and require. Covers testify assertions, mock expectations, argument matchers, call verification, suite lifecycle, and advanced patterns like Eventually, JSONEq, and custom matchers. Apply when the codebase imports github.com/stretchr/testify.

88

1.37x
Quality

89%

Does it follow best practices?

Impact

84%

1.37x

Average score across 3 eval scenarios

SecuritybySnyk

Passed

No known issues

SKILL.md
Quality
Evals
Security

Quality

Discovery

100%

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

This is an excellent skill description that clearly identifies its domain (stretchr/testify for Go), lists specific capabilities and concepts covered, and provides explicit trigger conditions for when to use it. It uses proper third-person voice, includes both high-level and granular trigger terms, and is distinctive enough to avoid conflicts with general Go testing skills.

DimensionReasoningScore

Specificity

Lists multiple specific concrete actions and concepts: assert, require, mock, suite packages, testify assertions, mock expectations, argument matchers, call verification, suite lifecycle, and advanced patterns like Eventually, JSONEq, and custom matchers.

3 / 3

Completeness

Clearly answers both 'what' (comprehensive guide covering assert, require, mock, suite packages, assertions, mock expectations, etc.) and 'when' (explicit 'Use when writing tests with testify, creating mocks, setting up test suites' and 'Apply when the codebase imports github.com/stretchr/testify').

3 / 3

Trigger Term Quality

Excellent coverage of natural terms a Go developer would use: 'testify', 'assert', 'require', 'mock', 'test suites', 'Golang testing', 'github.com/stretchr/testify', 'assertions', 'mock expectations', 'argument matchers'. These are all terms users would naturally mention.

3 / 3

Distinctiveness Conflict Risk

Highly distinctive with a clear niche: specifically targets the stretchr/testify Go library. The mention of the specific import path 'github.com/stretchr/testify' and testify-specific concepts like Eventually, JSONEq, and the assert/require distinction make it very unlikely to conflict with general Go testing or other testing framework skills.

3 / 3

Total

12

/

12

Passed

Implementation

79%

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

This is a strong, well-structured testify reference skill with excellent actionability and conciseness. Code examples are executable and the common mistakes section adds high value. The main weaknesses are the lack of an explicit end-to-end workflow for mock-based testing and the missing bundle file for the referenced mock.md, which slightly undermines progressive disclosure.

Suggestions

Add the referenced `./references/mock.md` bundle file or inline the essential mock workflow (define → expect → call → assert expectations) to avoid a dead reference.

Consider adding a brief numbered workflow for the mock testing pattern (1. Define mock, 2. Set expectations, 3. Inject into SUT, 4. Call method, 5. AssertExpectations) to improve workflow clarity.

DimensionReasoningScore

Conciseness

The content is lean and efficient throughout. It assumes Claude knows Go testing basics, avoids explaining what testify is beyond one orienting sentence, and uses compact code examples and terse rules. The assertion reference table is dense but earns its place as a quick-lookup resource.

3 / 3

Actionability

All code examples are fully executable Go snippets with real function signatures, proper imports implied by context, and copy-paste ready patterns. The naming convention (`is`/`must`), the rule about assert vs require, and the Common Mistakes section all provide concrete, immediately applicable guidance.

3 / 3

Workflow Clarity

The skill covers multiple distinct topics (assert/require, mocks, suites) with clear sections, and the suite lifecycle is well-sequenced. However, there's no explicit workflow for writing a test end-to-end (e.g., create mock → set expectations → call SUT → verify), and the mock section defers to a reference file without showing the core verification loop inline. The 'always verify with AssertExpectations(t)' is stated but not embedded in a validation-checkpoint workflow.

2 / 3

Progressive Disclosure

The skill references `./references/mock.md` for mock details and cross-references other skills, which is good progressive disclosure. However, the bundle has no files, so the mock reference is unverifiable. The core assertions section is quite long inline and could arguably be split out, though it serves as a useful quick-reference. The cross-references at the end are well-signaled.

2 / 3

Total

10

/

12

Passed

Validation

81%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation9 / 11 Passed

Validation for skill structure

CriteriaDescriptionResult

metadata_field

'metadata' should map string keys to string values

Warning

frontmatter_unknown_keys

Unknown frontmatter key(s) found; consider removing or moving to metadata

Warning

Total

9

/

11

Passed

Repository
samber/cc-skills-golang
Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.