SuperAPI AI 工具集

setup-pytest-fixtures

测试与质量

查看项目

更新于 10-16 05:05

技能介绍

用途:按项目既有模式创建 pytest fixtures,包括基础 fixture、可传参的工厂 fixture、异步 fixture 与作用域 fixture,并遵循 tests/utils/ 集中组织与 conftest.py 分层结构。

主要能力:提供基础、工厂、异步、作用域四类 fixture 的写法范式;给出集中式(tests/utils/ 下 mock_settings.py、mock_services.py、mock_drivers.py、environmental_helpers.py,并在 tests/conftest.py 导入)、层内(tests/unit、integration、e2e 的 conftest.py)与测试文件内三种组织策略;附常见模式(settings mock、ServiceResult mock、异步服务 mock)与排错指引。

使用方式:先判断 fixture 类型,再选组织位置,然后实现并加入 conftest 层级,最后在测试中按参数注入使用。异步 fixture 用 @pytest_asyncio.fixture 并配合 @pytest.mark.asyncio;需要清理时用 yield。脚本用法:python .claude/skills/setup-pytest-fixtures/scripts/generate_fixture.py --name mock_service --type factory --attributes host,port,timeout;python .claude/skills/setup-pytest-fixtures/scripts/analyze_fixture_usage.py --unused;python .claude/skills/setup-pytest-fixtures/scripts/organize_fixtures.py --validate。

依赖:uv pip install pytest;异步需 uv pip install pytest-asyncio。

适用场景:为单元、集成、端到端测试搭建可复用 mock 与资源 fixture。

限制:资料未提供具体版本、性能数据或收费信息;示例中的 Neo4j 连接与凭据仅为演示,实际需按项目调整。