with one click
auto-test
自动化测试生成工作流。为 FastAPI/RAG 后端生成 pytest 单测/集成/冒烟测试,强调 Mock 隔离、分层策略与边界覆盖。
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Menu
自动化测试生成工作流。为 FastAPI/RAG 后端生成 pytest 单测/集成/冒烟测试,强调 Mock 隔离、分层策略与边界覆盖。
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Based on SOC occupation classification
契约治理三件套的「值层」。核对同一个物理契约值(MQ topic/group、OSS bucket、消息字段名/别名、内部 HTTP 路径等)在 .env/.env.example/代码生效点/Java 对端多处是否逐字相等,找出配置漂移与死值,防止消息收不到/文件取不到。本 skill 只比对「同一个值在多处是否一致」,不判断结构/语义是否破坏对端(那是结构层,转 contract-guard),也不改文档。
指导 LLM 如何使用 toLink-Rag 项目的 MQ 消息中台进行消息收发、定义新消息类型以及处理多厂商适配逻辑。
当用户认为当前模块代码实现完毕,且当前分支应为 dev,需要从 dev 基于当前修改创建规范分支、提交并发起合并到 dev 的 GitHub PR 时使用;也用于发布收口,即直接创建 dev -> master 的 release PR,不新建 release 分支。适用于“从 dev 新建分支”“把当前修改提 PR”“实现完成创建 feature/refactor 分支并 PR”“发布新版本”“dev 合并 master”等交付收口场景。本 skill 是交付链终点,并在建分支/提 PR 前执行收口门槛:测试未过、契约文档失同步、acceptance 未提升者拒绝收口。
当用户要求把需求、功能、技术方案、架构改造、故障复盘、项目治理实践或实现过程写成博客/技术文章时必须使用;尤其适用于“写一篇博客”“生成技术博客”“把这个需求写成文章”“根据这个功能写博客”“把项目实现讲清楚”等请求。使用时要基于用户给出的需求和 toLink-Rag 当前仓库的真实代码、文档、契约、配置与测试证据完成分析,默认输出 Markdown 到 `.specs/blog/《博客名称》.md`。文章须采用「少量
把项目里已有的内部组件(如 MQ 中台、解析 pipeline、缓存层、对象存储)抽象成一份「项目自有 skill」,让 AI 每次接入都自动复用该组件的架构边界与约定。读组件真实代码,提炼「架构定位 / 职责边界 / 已落地清单 / 扩展点 / 红线」五要素,按统一原型生成 SKILL.md,登记到 .ai/skills/README.md 注册表并跑校验。
当用户要提 issue、登记 bug、记录新需求时使用;自动识别所属项目,生成结构化 issue 内容,先在 Linear 建主记录、再在 GitHub 建镜像,并双向回链。用户说"提个 issue""记一下这个 bug""把这个需求登记一下""同步到 Linear 和 GitHub""别再依赖 Linear 自动同步"时都应触发,即使没有明确说出"Linear"或"GitHub"。
| name | auto-test |
| description | 自动化测试生成工作流。为 FastAPI/RAG 后端生成 pytest 单测/集成/冒烟测试,强调 Mock 隔离、分层策略与边界覆盖。 |
| when_to_use | 当用户要求生成测试用例、补齐单元测试、修复失败的测试、编写 pytest fixtures、设置 Mock 策略或提升测试覆盖率时激活。触发示例:'写一下这个函数的单元测试'、'补全测试覆盖'、'这个接口的测试怎么写'、'用pytest测试' |
面向 Python 后端(FastAPI/RAG)的自动化测试生成规范与工作流,目标是产出可运行、可维护、可验证的测试代码,并严格隔离外部依赖(数据库、MQ、对象存储、第三方 API 等)。
pytest-mock 或标准 unittest.mock 对所有的网络和 I/O 行为执行无情打桩。绝不允许使用真实 API Key 或真实网络请求。Service 与 DB Session 组合)进行验证。.env 执行对真实厂商或物理引擎的数据写入(如:发起短对话、写入验证向量)。准备数据、执行行动 和 断言检查 环节,或使用相应的空行进行分割。mock_target.assert_called_once_with(...) 的触发细节及参数正确性。mock_db_session,respx_mock,mock_env_vars)。tests/unit/<镜像 src 路径>;集成测试放 tests/integration。.venv/bin/pytest tests/unit -q.venv/bin/pytest --run-integration tests(不带 --run-integration 不收集集成测试)pytest.mark.asyncio(项目已配 asyncio_mode/插件);async def 测试直接 await。httpx.MockTransport 注入受控 AsyncClient,不要打真实网络。AsyncSession 的测试替身或 fixture,禁止单测连真实 MySQL。TOLINK_RUN_REAL_SPARSE_VECTOR_TESTS),默认关闭,不混入单测。tests/unit/core/sparse_vector/。每次面临需要为一个组件生成测试的要求时,请利用以下格式做出专业应答:
test_success_scenario_xxx: 描述...test_failure_scenario_xxx: 描述...# 输出完整可运行的 pytest 代码,请在此处务必配置好相应的 @pytest.fixture 与 mock patch