pytest-api-tester SKILL.md skillA
pytest-api-tester from pramoddutta/aitesterblueprint4x is an agent skill: a SKILL.md folder an AI agent loads when a task calls for it.
mdr add pramoddutta/aitesterblueprint4x/pytest-api-tester@v1.0.0Pins v1.0.0 in mdr.lock. Pin the fingerprint instead.
- Audit grade
- A, 17 of 17 checks passed
- Kind
- SKILL.md skill
- Repository
- pramoddutta/aitesterblueprint4x
- Path
chapter_14_MCP_Create_VIBE/testskill-finder-mcp/skills/framework-packs/api-pack/pytest-api-tester/SKILL.md- Versions recorded
- 1
- Latest version
- v1.0.0, committed Oct 10, 2026
- Size
- 3,560 bytes
- Repository stars
- 14
- License
- none declared
Generates Python API tests with pytest and requests: fixtures for base URL and auth, parametrize for negative cases, and schema validation with jsonschema or pydantic. Use when an SDET says "write pytest API tests for this endpoint", "add negative cases with parametrize", "validate the response schema in Python", or pastes an OpenAPI spec or curl request. Produces a conftest and test module, a draft the engineer runs against a real service.
Collected from public GitHub. Every version is saved exactly as it was and never changes. Install it at an exact version with the mdr tool, and every file is checked before it reaches your agent. The main file is checked against the SHA-256 fingerprint recorded here, and the others against the fingerprints GitHub keeps for its source commit. The automatic checks below grade the latest version, and the same checks always give the same file the same grade.
What the file says
# Pytest API Tester You draft **small, independent pytest API tests** where setup lives in fixtures, negative cases live in one parametrized table, and every response is checked against a schema. ## When to use - A Python team needs API coverage for an endpoint or resource. - Negative and boundary cases are written as copy-pasted tests and need parametrize. - Responses are only checked for status code and need schema validation. ## Workflow 1. **Extract the contract.** Method, path, params, auth, request body, status codes, and the response shape. If the spec is missing, ask; do not invent fields or codes. 2. **Write fixtures in conftest.py.** A session-scoped `requests.Session` with the auth header, base URL from an env var, and a factory fixture that creates test data and deletes it after `yield`. Always pass a `timeout` on requests. 3. **Cover the happy path.** Assert status, then validate the body with `jsonschema.validate` or a pydantic model (`Order.model_validate(r.json())`). 4. **Parametrize negative cases.** One `@pytest.mark.parametrize` table for invalid bodies, boundaries, and unknown ids, with `ids=` so reports name each case. …
Read the whole file at its exact version.
How to install
mdr add pramoddutta/aitesterblueprint4x/pytest-api-tester@sha256:8f61fadb99a005aeThe line at the top of this page pins the label v1.0.0, which is what most people want. This one pins the sha256 fingerprint of the contents instead, so it survives a label being moved. Either way the exact version is written to mdr.lock, and mdr install downloads and checks those contents again, so it installs them exactly or stops with an error.
[](https://markdownregistry.com/a/art_nqyy4w5butjydztz)
1 badge image fetches in 30 days. What the badge shows.
Versions
The registry has recorded 1 version of this file, committed on Oct 10, 2026.
Audit of the latest version
- pass: Frontmatter block present
- pass: Frontmatter declares a name
- pass: Frontmatter declares a description
- pass: Size between 200 bytes and 200 KB (3560 bytes)
- pass: No zero-width or bidi control characters
- pass: No instruction hidden inside an HTML comment
- pass: No link to an exfiltration or paste host
- pass: No credential-shaped string
- pass: No instruction to send local credentials anywhere
- pass: No text hidden with inline styles
- pass: No prompt-injection phrasing
- pass: No curl or wget piped into a shell
- pass: No recursive delete of root, home or parent
- pass: No instruction to read or print local credentials
- pass: No base64 blob over 200 characters
- pass: No link to a raw IP address
- pass: No script tag
Source
pramoddutta/aitesterblueprint4x · 14 stars · license none declared · pushed 2026-10-11 · branch main
API
GET https://markdownregistry.com/api/v1/artifacts/art_nqyy4w5butjydztz GET https://markdownregistry.com/api/v1/resolve?ref=pramoddutta/aitesterblueprint4x/pytest-api-tester GET https://markdownregistry.com/api/v1/blob/8f61fadb99a005aec7f03214957d8c94fd6198d52d78ad646eea51c1b0c5d0ad
Your AI assistant does the legwork. You hear about the deals worth your word. Hand yours the standing instructions at modelranch.com and it joins the network that reads files like this one.
Guides: the SKILL.md format and its required fields · what to check before you install a skill · how to pin a skill to an exact version · where to find agent skills · keeping a team on the same skills · which agent file does what.