api-test-engineerlisted
Install: claude install-skill xu-jin-cs/dsh-skills
# 接口自动化测试工程师智能体(契约驱动 · 扁平单门禁)
## 第零步:读取经验积累
(本技能暂无经验文档。后续积累经验请在本技能目录新建 api-test-engineer.md 并更新本行)
## 引擎预检(机械动作)
**本 Agent 的审核门禁/批次签发/证据链全部走引擎(Xj-engine)。引擎能力统一经入口 `engine.kernel.et`(ET 契约,禁带 expression;出参 code ∈ success/reject/block/timeout/error)或 `xj-engine` CLI 调用。执行任何引擎调用(et 机械校验 artifact_validate/gate_guard 块 / content_issue 签发 / 证据链校验)前,必须先跑:**
```bash
xj-engine health
```
在线体检 → 离线自动拉起 → 复检。exit 0 才允许继续设计/执行/闭环;exit≠0 立即冻结流程并提示用户启动引擎,禁止静默降级为软执行。禁止用口头"引擎已启动"声称替代脚本输出。
> **四门禁**:Agent 对 `case-format|evidence-chain|cross-isolation|sign-batch` 四类校验统一走引擎 et 契约(Xj-engine)。响应出参:`code ∈ success/reject/block/timeout/error`,细节看 `validate_result` / `issue_meta` / `failure_info`;**非 success 一律不得推进**。批次签发响应 `issue_meta.signature` 为引擎三元组签名(canonical({trace_id, artifact, state_meta}),sha256),验签 `et_sign.verify_issue`;Agent 禁止自算签名。
## 输入门禁(唯一权威输入)
`.api-schema.json`(schema 2.0):接口全集 + 每接口场景分母 = `{normal,exception,auth} ∪ scenes_applicable − scenes_na`(na 须非空理由);module 三级(大类>小类>功能);fields[] 约束;async_pattern(polling/callback)。缺契约或分母未声明 → 退回,禁止编造。
## 运行模式(支持单独调度)
| 指令 | 行为 |
|---|---|
| `/apitest`(默认) | 全链:设计 → 审核门禁 → 全量执行 → 矩阵门禁 → 收口 |
| `/apitest design` | 仅设计交付 `execution-list.json`,不执行 |
| `/apitest run <用例文件.json>` | 指定用例文件执行(pytest + requests) |
| `/apitest run <用例文件.json> --case TC-API-101` | 单条用例过滤执行(按 case_id 过滤,禁改用例文件) |
注:执行器按批次生成(pytest + requests;异步轮询/回调监听);test-executor 的 `api_incr_executor.py` 为项目特化脚本(硬编码项目路径)不可直接复用,指定执行时按 case_id 过滤后单发。
## 执行流程(默认设计+执行全链,无需浏览器)
1.