一键导入
pytest-mastery
Deep expertise in the pytest framework, mocking strategies, and Test Driven Development.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Deep expertise in the pytest framework, mocking strategies, and Test Driven Development.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Expert in building, evaluating, and deploying AI agents using the Google ADK Python framework. Use this skill for writing agent logic, configuring multi-agent systems, and implementing tool integrations.
Advanced manipulation of text streams using the classic Unix power tools: awk and sed.
The discipline of writing robust, re-runnable system administration scripts that converge to a desired state.
Expertise in creating delightful, low-friction command-line interfaces using modern TUI principles.
Ensuring that code is well formatted
The art of identifying the root cause of software defects through heuristic analysis and logical deduction.
| name | pytest-mastery |
| description | Deep expertise in the pytest framework, mocking strategies, and Test Driven Development. |
Deep expertise in the pytest framework, mocking strategies, and Test Driven Development.
* **Framework:** We strictly use `pytest`. Do not use the legacy
`unittest` class-based style unless absolutely necessary for legacy
compatibility.
* **Discovery:** Test files must be named `test_*.py` or `*_test.py`.
Test functions must start with `test_`.
* **Structure:** Tests live in a `tests/` directory that mirrors the
`src/` package structure.
Every test must follow this logical flow:
1. **Arrange:** Set up the state (variables, mocks, fixtures).
2. **Act:** Call the function/method under test.
3. **Assert:** Verify the result matches expectations using simple
`assert` statements.
* **Unit Tests must be Hermetic:** They never touch the network, the
filesystem, or the database.
* **Tools:** Use `unittest.mock` (specifically `patch` and `MagicMock`)
to stub out external dependencies.
* **Fixtures:** Use `pytest.fixture` in `conftest.py` for shared setup
logic to keep test bodies clean.
pytest.mark.parametrize to test multiple input/output scenarios with a single test function (Data-Driven Testing).pytest.raises) when given invalid input.