CtrlK
BlogDocsLog inGet started
Tessl Logo

testland/tavern-testing

Authors Tavern API tests as YAML files (`test_*.tavern.yaml`) with `test_name` + `stages` + `request` + `response` blocks, runs them through the Tavern pytest plugin (auto-discovered), and gates CI on the resulting JUnit XML. Covers RESTful, MQTT, and gRPC variants. Use when the project runs on pytest and prefers YAML over a Python- or Java-DSL; on the JVM use karate-testing or restassured-testing instead, and for schema-driven property-based fuzzing on the same pytest stack use schemathesis-fuzzing.

77

Quality

97%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

Passed

No findings from the security scan

Overview
Quality
Evals
Security
Files

Quality

Content

92%

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

The content is highly actionable with executable YAML, commands, and a complete CI workflow, and the workflow is clearly sequenced with validation checkpoints. Its only real weakness is progressive disclosure — everything lives in one large SKILL.md with no bundle references, where splitting the CI recipe and reference tables into separate files would improve navigation.

Suggestions

Move the CI integration GitHub Actions workflow and the request/response/matcher reference tables into files under `references/` (e.g. `ci-integration.md`, `request-response-reference.md`), keeping SKILL.md as a concise overview that links to them — this would lift progressive_disclosure from one monolithic file to well-signaled one-level-deep references.

Consolidate the repeated '(Per [tavern-docs][docs].)' citations into a single canonical-reference note near the top to reduce token repetition and tighten conciseness.

Consider splitting the Anti-patterns table into a short inline summary plus a `common-pitfalls.md` reference, so the overview stays lean while preserving the detailed fixes.

DimensionReasoningScore

Conciseness

The body is lean and sectioned — code-first examples, matcher/auth tables, and concise explanations — with each token largely earning its place. Minor 'Per [tavern-docs]' citations are light repetition but not enough to drop it to the score-2 'could be tightened' anchor.

3 / 3

Actionability

Provides fully executable artifacts: a complete `test_*.tavern.yaml` example, install commands (`pip install tavern[pytest]`), run commands, and a copy-paste-ready GitHub Actions workflow — matching the 'copy-paste ready' anchor.

3 / 3

Workflow Clarity

The end-to-end flow (Install → File shape → Running → CI integration) is clearly sequenced with explicit validation/feedback steps (`--junitxml=results.xml`, `if: always()` for report upload and result surfacing) and an Anti-patterns table for error recovery.

3 / 3

Progressive Disclosure

No bundle files exist and the content is a monolithic ~300-line single file; the CI workflow, matcher tables, and request/response references could be split into separate reference files. It is well-sectioned with one-level-deep sibling-skill links, which keeps it above score-1, but it is not 'content appropriately split'.

2 / 3

Total

11

/

12

Passed

Description

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.

The description is specific, trigger-rich, complete, and clearly distinct from sibling testing skills via explicit redirection clauses. It uses third person and includes both a 'what' and an explicit 'Use when' trigger. No notable weaknesses.

DimensionReasoningScore

Specificity

Names multiple concrete actions: 'Authors Tavern API tests as YAML files', 'runs them through the Tavern pytest plugin', 'gates CI on the resulting JUnit XML', and 'Covers RESTful, MQTT, and gRPC variants' — clearly above the score-2 'names domain and some actions' anchor.

3 / 3

Completeness

Explicitly answers both what (author YAML tests, run via pytest, gate CI on JUnit XML) and when via an explicit 'Use when the project runs on pytest and prefers YAML over a Python- or Java-DSL' trigger clause.

3 / 3

Trigger Term Quality

Includes natural terms a user would say — 'pytest', 'YAML', 'API tests', 'JUnit XML', 'CI' — alongside protocol variants. Not the level below because the keyword coverage is broad rather than 'some relevant keywords missing common variations'.

3 / 3

Distinctiveness Conflict Risk

Carves a clear niche and explicitly redirects overlapping cases — 'on the JVM use karate-testing or restassured-testing instead' and 'for schema-driven property-based fuzzing... use schemathesis-fuzzing' — making conflicts with sibling skills unlikely.

3 / 3

Total

12

/

12

Passed

Validation

100%

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

Validation16 / 16 Passed

Validation for skill structure

No warnings or errors.

Reviewed

Table of Contents