SuperAPI AI 工具集

django-dev-test

测试与质量

查看项目

更新于 10-16 02:28

技能介绍

用途:在 Django 项目中按 pytest-django 与 factory_boy 约定编写测试、测试工厂与测试固定装置,覆盖模型、服务与 API 层测试。主要能力:坚持只用 pytest(不使用 Django TestCase);用 factory_boy 生成全部测试数据;测试目录镜像应用结构;每个测试完全隔离;优先使用 @pytest.fixture 而非 setUp。安装:pip install pytest pytest-django factory-boy pytest-cov。配置可写在 pyproject.toml 的 [tool.pytest.ini_options] 中,设置 DJANGO_SETTINGS_MODULE、python_files、python_classes、python_functions,并可用 addopts 与 markers(如 slow、integration)。结构示例:tests/conftest.py 放共享固定装置,factories/ 放工厂,unit/ 与 integration/、e2e/ 分层组织。conftest 可提供 client、api_client、authenticated_client 等固定装置。工厂建议基于 DjangoModelFactory 的 BaseFactory,支持 post_generation、SubFactory、fuzzy 等模式,并通过固定装置注册。测试示例包括模型测试、服务测试(含 mock.patch 与 pytest.raises)与 API 测试(状态码、认证、JSON 断言),相关测试通常标记 @pytest.mark.django_db。限制:具体命令、配置字段与代码以资料为准,资料未提供版本、收费、价格、平台与效果信息;高级固定装置模式见 references/fixtures.md,相关技能包含 django-dev 与 django-dev-ninja。