Comprehensive guide to stretchr/testify for Golang testing. Covers assert, require, mock, and suite packages in depth. Use whenever writing tests with testify, creating mocks, setting up test suites, or choosing between assert and require. Essential for testify assertions, mock expectations, argument matchers, call verification, suite lifecycle, and advanced patterns like Eventually, JSONEq, and custom matchers. Trigger on any Go test file importing testify.
92
93%
Does it follow best practices?
Impact
90%
1.30xAverage score across 3 eval scenarios
Passed
No known issues
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 a strong skill description that clearly identifies its domain (stretchr/testify for Go), lists specific capabilities across multiple packages, and provides explicit trigger conditions. It uses third person voice appropriately and includes both common and advanced feature terms that users would naturally reference.
| Dimension | Reasoning | Score |
|---|---|---|
Specificity | Lists multiple specific concrete actions and concepts: assert, require, mock, suite packages, mock expectations, argument matchers, call verification, suite lifecycle, Eventually, JSONEq, custom matchers. These are highly specific capabilities. | 3 / 3 |
Completeness | Clearly answers both what ('Covers assert, require, mock, and suite packages in depth') and when ('Use whenever writing tests with testify, creating mocks, setting up test suites... Trigger on any Go test file importing testify'). Explicit trigger guidance is provided. | 3 / 3 |
Trigger Term Quality | Excellent coverage of natural terms: 'testify', 'assert', 'require', 'mock', 'test suites', 'Go test file', 'assertions', 'mock expectations', 'argument matchers'. These are terms a user would naturally use when working with testify in Go. | 3 / 3 |
Distinctiveness Conflict Risk | Highly distinctive — specifically targets stretchr/testify for Golang, which is a clear niche. The mention of specific packages (assert, require, mock, suite) and Go test files importing testify makes it very unlikely to conflict with general testing or other language testing skills. | 3 / 3 |
Total | 12 / 12 Passed |
Implementation
87%Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.
This is a high-quality skill that efficiently covers testify's major packages with executable, realistic code examples and a clear structure. The assert vs require distinction is well-articulated with a practical rule, and the Common Mistakes section adds significant value. The only notable gap is the lack of an explicit step-by-step workflow with validation checkpoints for mock setup and verification, though the content appears truncated (the Regexp assertion is cut off mid-line).
Suggestions
Add a brief numbered workflow for mock usage showing the complete define→expect→call→verify→AssertExpectations sequence with an explicit validation checkpoint.
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | The content is lean and efficient throughout. It avoids explaining what testify is conceptually, jumps straight into actionable distinctions (assert vs require), and uses terse annotations alongside code. The 'Common Mistakes' section is a compact list of pitfalls without unnecessary elaboration. | 3 / 3 |
Actionability | All code examples are executable Go code with realistic context (ParseConfig, TokenServiceSuite). The assertions reference table, mock patterns, and suite example are all copy-paste ready with concrete types and method calls. | 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 validation workflow — e.g., no 'run tests, check mock expectations, fix failures' feedback loop for the mock workflow, and the mock section delegates details to a reference file without showing the complete define→expect→call→verify sequence inline. | 2 / 3 |
Progressive Disclosure | The skill provides a clear overview with well-organized sections and delegates detailed mock reference to a separate file with a clear link. Cross-references to related skills (golang-testing, golang-linter) are one level deep and clearly signaled at the end. | 3 / 3 |
Total | 11 / 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.
Validation — 9 / 11 Passed
Validation for skill structure
| Criteria | Description | Result |
|---|---|---|
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 | |
b88f91d
Table of Contents
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.