Skip to content
Development
Skill

/pytest-config

Provides standardized pytest config, reusable fixtures, and CI integration patterns. Use when setting up or auditing a Python plugin's test infrastructure.

From plugin
claude-night-market
337200 skills59 agents162 commands1 MCP
Install
$ npx -y skills add athola/claude-night-market --skill pytest-config --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/pytest-config

Context preview

The summary Claude sees to decide when to auto-load this skill.

Provides standardized pytest config, reusable fixtures, and CI integration patterns. Use when setting up or auditing a Python plugin's test infrastructure.

SKILL.md

pytest-config.SKILL.md
name: pytest-config
description: Provides standardized pytest config, reusable fixtures, and CI integration patterns. Use when setting up or auditing a Python plugin's test infrastructure.
globs: ["**/conftest.py", "**/pytest.ini", "**/pyproject.toml"]
alwaysApply: false
category: infrastructure
tags:
- pytest
- testing
- configuration
- fixtures
dependencies:
- leyline:testing-quality-standards
estimated_tokens: 200
provides:
  infrastructure:
  - pytest-config
  - conftest-patterns
  - coverage-config
modules:
- modules/conftest-patterns.md
- modules/git-testing-fixtures.md
- modules/mock-fixtures.md
- modules/ci-integration.md
- modules/README.md
model_hint: standard

Table of Contents

  • [Quick Start](#quick-start)
  • [Detailed Patterns](#detailed-patterns)
  • [Integration with Other Skills](#integration-with-other-skills)
  • [Exit Criteria](#exit-criteria)
  • [Troubleshooting](#troubleshooting)

Pytest Configuration Patterns

Standardized pytest configuration and patterns for consistent testing infrastructure across Claude Night Market plugins.

When To Use

  • Setting up pytest configuration and fixtures
  • Configuring conftest.py patterns for test infrastructure

When NOT To Use

  • Non-Python projects or projects using other test frameworks
  • Simple scripts that do not need test infrastructure

Quick Start

Basic pyproject.toml Configuration

[tool.pytest.ini_options]
testpaths = ["tests"]
python_files = ["test_*.py"]
python_classes = ["Test*"]
python_functions = ["test_*"]
addopts = [
    "-v",
    "--cov=src",
    "--cov-report=term-missing",
    "--cov-fail-under=80",
    "--strict-markers",
]
markers = [
    "unit: marks tests as unit tests",
    "integration: marks tests as integration tests",
    "slow: marks tests as slow running",
]

[tool.coverage.run]
source = ["src"]
omit = ["*/tests/*", "*/migrations/*", "*/__pycache__/*"]
branch = true

[tool.coverage.report]
exclude_lines = [
    "pragma: no cover",
    "def __repr__",
    "def __str__",
    "raise NotImplementedError",
    "if __name__ == .__main__.:",
    "if TYPE_CHECKING:",
    "class .*\\bProtocol\\):",
    "@(abc\\.)?abstractmethod",
]
precision = 2
show_missing = true

**Verification:** Run `pytest --collect-only` to verify discovery, `pytest -v --co -q` for markers, and `pytest --cov` for coverage thresholds.

Detailed Patterns

For detailed implementation patterns, see:

  • **[Conftest Patterns](modules/conftest-patterns.md)** - Conftest.py templates, fixtures, test markers, and directory structure
  • **[Git Testing Fixtures](modules/git-testing-fixtures.md)** - GitRepository helper class for testing git workflows
  • **[Mock Fixtures](modules/mock-fixtures.md)** - Mock tool fixtures for Bash, TodoWrite, and other Claude Code tools
  • **[CI Integration](modules/ci-integration.md)** - GitHub Actions workflows and test commands for automated testing
  • **Module Index**: See `modules/README.md` for module organization overview

Integration with Other Skills

This skill provides foundational patterns referenced by:

  • `parseltongue:python-testing` - Uses pytest configuration and fixtures
  • `pensive:test-review` - Uses test quality standards
  • `sanctum:test-*` - Uses conftest patterns and Git fixtures

Reference in your skill's frontmatter:

dependencies: [leyline:pytest-config, leyline:testing-quality-standards]

Exit Criteria

  • pytest configuration standardized across plugins
  • conftest.py provides reusable fixtures
  • test markers defined and documented
  • coverage configuration enforces quality thresholds
  • CI/CD integration configured for automated testing

Troubleshooting

Common Issues

**Tests not discovered** Ensure test files match pattern `test_*.py` or `*_test.py`. Run `pytest --collect-only` to verify.

**Import errors** Check that the module being tested is in `PYTHONPATH` or install with `pip install -e .`

**Async tests failing** Install pytest-asyncio and decorate test functions with `@pytest.mark.asyncio`

Read more
Ships withclaude-night-market

A plugin marketplace for Claude Code. Install only the plugins you need to run git workflows, code review, spec-driven development, and autonomous agents from inside your Claude Code session.

Get the whole plugin

Other skills on claude-night-market.