qa-boundary-deep-dive
从输入、状态、时间、资源四个维度系统化识别边界条件。真正的 Bug 往往在"看起来不是边界"的地方——比如用户名字段没测超长 Unicode、订单支付刚好在超时前1秒完成、1000人同时下单。当需要补充边界测试、等价类划分完成后需要补边界值、或者直觉告诉你某些边界可能有问题时,应当使用此技能。每个边界条件都需要标注风险等级并给出明确的预期结果。适用于任何有输入字段、状态变化、时间约束或资源限制的系统。 触发场景:边界分析、边界条件、还有什么边界、边界值、边界扫描、等价类划分完成后需要补充边界值测试时。 Use when the user asks about: boundary value analysis across input, state, time, and resource dimensions — finding edge cases that the obvious boundary list misses. Skill: qa-boundary-deep-dive Owner: kokxi Summary: 从输入、状态、时间、资源四个维度系统化识别边界条件。真正的 Bug 往往在"看起来不是边界"的地方——比如用户名字段没测超长 Unicode、订单支付刚好在超时前1秒完成、1000人同时下单。当需要补充边界测试、等价类划分完成后需要补边界值、或者直觉告诉你某些边界可能有问题时,应当使用此技能。每个边界条件都需要标注风险等级并给出明确的预期结果。适用于任何有输入字段、状态变化、时间约束或资源限制的系统。 触发场景:边界分析、边界条件、还有什么边界、边界值、边界扫描、等价类划分完成后需要补充边界值测试时。 Use when the user asks about: boundary value analysis across input, state, time, and resource dimensions — finding
Rank
62
Safety
84
Downloads
1.0k
Updated
Oct 11, 2026
Version
1.8.0
Source
CLAWHUB
About
What it does, and when to use it.
Capability contract not published. No trust telemetry is available yet. 1K downloads reported by the source. Last updated 10/11/2026.
Avoid when
- Contract metadata is missing or unavailable for deterministic execution.
Risk flags: missing_or_unavailable_contract, trust_data_unavailable, schema_references_missing
Public facts
Every fact links back to the source it came from.
- Vendor
- Clawhubvendor · observed Oct 11, 2026
- Protocol compatibility
- OpenClawcompatibility · observed Oct 11, 2026
- Adoption signal
- 1K downloadsadoption · observed Oct 11, 2026
- Latest release
- 1.8.0release · observed Sep 29, 2026
- Handshake status
- UNKNOWNsecurity
Install and run
Setup complexity: low.
clawhub skill install s170jw3s1atcj5jwhqb4r7v7eh8912kp:qa-boundary-deep-dive- Setup complexity is classified as HIGH. You must provision dedicated cloud infrastructure or an isolated VM. Do not run this directly on your local workstation.
- Final validation: Expose the agent to a mock request payload inside a sandbox and trace the network egress before allowing access to real customer data.
Contract: missing
curl -s "https://www.xpersona.co/api/v1/agents/clawhub-kokxi-qa-boundary-deep-dive/snapshot"
Run-check
$0.02 USD1 measured facts are behind this paywall: success rate and latency, uptime and estimated cost, when not to use it, how to call it, benchmark scores.
Agents pay $0.02 in USDC. A card payment is $0.50, the smallest a card allows.
Documentation
CLAWHUB
80,383 characters of source documentation, loaded on request.
Extracted files
5 files captured from the source.
SKILL.md
---
name: qa-boundary-deep-dive
description: >-
从输入、状态、时间、资源四个维度系统化识别边界条件。真正的 Bug 往往在"看起来不是边界"的地方——比如用户名字段没测超长 Unicode、订单支付刚好在超时前1秒完成、1000人同时下单。当需要补充边界测试、等价类划分完成后需要补边界值、或者直觉告诉你某些边界可能有问题时,应当使用此技能。每个边界条件都需要标注风险等级并给出明确的预期结果。适用于任何有输入字段、状态变化、时间约束或资源限制的系统。
触发场景:边界分析、边界条件、还有什么边界、边界值、边界扫描、等价类划分完成后需要补充边界值测试时。 Use when the user asks about: boundary value analysis across input, state, time, and resource dimensions — finding edge cases that the obvious boundary list misses.
license: MIT
allowed-tools: Read Grep Glob
metadata:
display-name: "Boundary Deep Dive"
version: "1.8.0"
when-to-use: "用户说\"边界分析\"、\"边界条件\"、\"还有什么边界\"、\"边界值\"、\"边界扫描\"、需要深入分析边界、等价类划分完成后需要补充边界值测试时"
related-skills: "{\"upstream\":[\"qa-scenario-tree\"],\"downstream\":[\"qa-ai-context-engineering\",\"qa-code-review-for-test\",\"qa-execution-observation\",\"qa-test-case-design\"]}"
references: "[\"assets/boundary-table.md\",\"references/four-dimensions.md\"]"
input-format: "{\"required\":[{\"name\":\"场景树\",\"type\":\"object\",\"description\":\"来自qa-scenario-tree的输出,包含主路径/分支/异常场景\"}],\"optional\":[{\"name\":\"风险评估\",\"type\":\"object\",\"description\":\"来自qa-risk-intuition的输出,标识高风险区域\"}]}"
output-format: "{\"traceability\":[\"每个边界带唯一ID:BD-{模块缩写}_{序号}(如 BD_AMOUNT_001)\",\"关联场景ID:SC-{场景模块缩写}-{序号}(SC- 才是场景前缀)\"],\"structure\":[{\"boundary_analysis_table\":\"边界分析表:固定 7 列(边界ID|边界维度|边界条件|风险等级|测试深度|预期结果|关联场景ID)\"},\"测试深度:深测(高风险)/ 常规(中风险)/ 冒烟(低风险),不要求每条边界都深测\",\"覆盖率:标注口径(基于现有场景树/需求文档),禁止\\\"全覆盖/100%\\\"绝对化表述;未覆盖维度标注\\\"未覆盖+原因\\\"\"],\"input_boundary\":\"输入边界清单\",\"state_boundary\":\"状态边界清单\",\"time_boundary\":\"时间边界清单\",\"resource_boundary\":\"资源边界清单\",\"uncovered_dimensions\":\"未覆盖维度 + 原因\"}"
error-recovery-guidance: "{\"on_failure\":\"边界分析遗漏维度时回退到场景树补充\",\"retry_behavior\":\"补全缺失场景后重新分析边界\"}"
categories: "[\"Development\",\"Testing\"]"
depth-requirement: "{\"reference_value\":\"见正文「边界数量要求」表:以场景数为基准,简单项目=场景数×1.5 / 中等=×2 / 复杂=×2.5(绝对倍数,不是乘数档)\",\"minimum\":\"输入/状态/时间/资源4个维度至少覆盖3个;未覆盖的维度必须在输出中标注原因\"}"
---
> ⚠️ 本技能单独使用效果有限,建议配合完整技能集(12 步工作流)使用。安装:npx skills add Kokxi/qa-test-skills
> **⚠️ 安全警告**:本技能的示例可能涉及订单号、支付金额、截图、身份证、手机号等敏感数据。
> 实际使用时请勿粘贴真实生产数据、客户信息或财务凭证;测试前应脱敏/掩码处理。
> 本技能仅在 workspace/ 输出评估文件,不持久化、不外传、不跨会话复用。
# 边界深度分析
## 核心原则
真正的 Bug 往往在"看起来不是边界"的地方。**四个维度都要过一遍**——
漏掉任何一维都是本技能最常见的失效方式。
## 1. 四维速查(先扫这个)
| 维度 | 子项 | 最容易漏的 | 典型 Bug 率 |
|------|------|-----------|-----------|
| **输入边界** | 值域 / 格式 / 组合 / 业务 | **业务边界**(唯一性、外键不存在、数据过期) | 高 |
| **状态边界** | 转换 / 值 / 持续 | **非法转换**(业务不允许的操作,如 已完成→已支付) | 中 |
| **时间边界** | 超时 / 并发 / 时序 / 周期 | **周期边界**(日切、月切、节假日) | 高 |
| **资源边界** | 内存 / 连接 / 线程 / 磁盘 / 网络 | **连接耗尽**(而非内存耗尽) | 中 |
> "最容易漏"那一列是重点——值域、内存这些人人都会扫,那一列是要靠业务理解才能想到的。
## 2. 边界数量要求
**关键指标**:以场景数为基准,按项目复杂度放大。
| 复杂度 | 倍数 | 示例(场景 25 个) | 复杂度判断标准 |
|--------|------|-----------------|--------------|
| 简单项目 | ×1.5 | 边界 38 个 | 单模块、低风险、无并发 |
| 中等项目 | ×2 | 边界 50 个 | 多模块、中风险、少量并发 |
| 复杂项目 | ×2.5 | 边界 63 个 | 跨模块、高风险、高并发 |
## 3. 加载时机
**需要时才读,不要一上来全读**:
| 什么时候读 | 读哪个 |
|-----------|---_meta.json
{
"ownerId": "kn71y9b23csfx0ykgm55d5m9x5891zt8",
"slug": "qa-boundary-deep-dive",
"version": "1.8.0",
"publishedAt": 1790655929988
}references/four-dimensions.md
# 四维边界模型 — 完整维度详图
> 本文是 `qa-boundary-deep-dive` 的**维度详图**。需要展开某一维的完整子项清单、或需要具体示例时读本文;
> 只想知道"该扫哪几维、哪几维最容易漏"时读 `SKILL.md` 的速查表即可,不必读本文。
四维 = 输入 / 状态 / 时间 / 资源。**四个维度都要过一遍**——漏掉任何一维都是本技能最常见的失效方式。
---
## 维度 1:输入边界
最容易发现,但也最容易遗漏细节。
```text
输入边界清单:
├─ 值域边界
│ ├─ 最小值:0、1、-1、最小负数
│ ├─ 最大值:最大正数、最大长度
│ ├─ 空值:null、空字符串、空格
│ └─ 特殊值:0、负数、小数、科学计数法
│
├─ 格式边界
│ ├─ 编码:UTF-8、GBK、特殊字符
│ ├─ 长度:超长、刚好、为0
│ ├─ 类型:数字、字母、中文、混合
│ └─ 格式:日期、邮箱、手机号、URL
│
├─ 组合边界
│ ├─ 多字段:字段间依赖关系
│ ├─ 批量:批量输入的边界
│ └─ 并发:并发输入的边界
│
└─ 业务边界
├─ 唯一性:重复数据
├─ 关联性:外键不存在
└─ 有效性:数据过期
```
**示例(金额输入)**:
```text
值域边界:
- 0元:能否购买?
- 0.01元:最小金额?
- 99999999.99元:最大金额?
- 负数:能否退款?
- 小数位:0.1元、0.01元、0.001元(精度丢失)
格式边界:
- 非数字:abc
- 特殊字符:$100、100元
- 科学计数法:1e10
```
> **最容易漏的子项:业务边界**(唯一性/关联性/有效性)。值域和格式人人都会扫,
> "外键指向一条已删除的记录"这种要靠业务理解才能想到。
---
## 维度 2:状态边界
状态转换的临界点。
```text
状态边界清单:
├─ 状态转换边界
│ ├─ 合法转换:正常路径
│ ├─ 非法转换:不允许的操作
│ ├─ 临界转换:刚好满足条件
│ └─ 并发转换:同时触发多个转换
│
├─ 状态值边界
│ ├─ 初始状态:对象创建时
│ ├─ 终态:对象生命周期结束
│ ├─ 中间状态:处理过程中
│ └─ 异常状态:错误/超时
│
└─ 状态持续边界
├─ 最短持续:状态保持的最短时间
├─ 最长持续:状态保持的最长时间
└─ 超时处理:超过时间限制怎么办
```
**示例(订单状态)**:
```text
合法转换:
- 待支付 → 已支付(正常)
- 待支付 → 已取消(超时)
非法转换:
- 已完成 → 已支付(不允许)
- 已取消 → 待支付(不允许)
临界转换:
- 支付刚好在超时前1秒完成
- 库存刚好剩1件时下单
并发转换:
- 同一订单同时支付和取消
```
> **最容易漏的子项:非法转换**。`qa-state-transition` 会专门覆盖它,但本技能扫边界时
> 也要带上——"已完成 → 已支付"是资损直接相关的漏洞。
---
## 维度 3:时间边界
超时、并发、时序相关。
```text
时间边界清单:
├─ 超时边界
│ ├─ 请求超时:接口响应时间
│ ├─ 连接超时:建立连接时间
│ ├─ 会话超时:用户登录状态
│ └─ 业务超时:订单支付时间
│
├─ 并发边界
│ ├─ 同时操作:多用户同时操作同一数据
│ ├─ 重复提交:用户重复点击
│ ├─ 竞态条件:操作顺序影响结果
│ └─ 资源竞争:多个操作竞争同一资源
│
├─ 时序边界
│ ├─ 操作顺序:A必须在B之前
│ ├─ 依赖关系:A的结果影响B
│ ├─ 中间状态:操作过程中的状态
│ └─ 原子性:操作是否不可分割
│
└─ 周期边界
├─ 日切:每天0点的数据处理
├─ 月切:每月1号的结算
├─ 年切:年度数据归档
└─ 节假日:特殊日期的处理
```
**示例(支付超时)**:
```text
超时边界:
- 支付超时:30分钟
- 网络超时:30秒
- 重试超时:3次重试
并发边界:
- 同一用户多设备支付
- 多人同时购买最后一件商品
时序边界:
- 支付回调先于支付请求到达
- 支付成功但库存扣减失败
```
> **最容易漏的子项:周期边界**。日切/月切/节假日不在任何"正常测试路径"上,
> 但账务类系统出问题几乎都在这里。跨天、跨月、法定节假日各测一次。
---
## 维度 4:资源边界
内存、连接、线程等资源耗尽。
```text
资源边界清单:
├─ 内存边界
│ ├─ 内存泄漏:长时间运行
│ ├─ 大对象:加载大数据
│ ├─ 缓存溢出:缓存达到上限
│ └─ OOM:内存耗尽
│
├─ 连接边界
│ ├─ 连接池耗尽:并发请求过多
│ ├─ 连接超时:网络不稳定
│ ├─ 连接泄露:连接未正确释放
│ └─ 连接风暴:服务重启后
│
├─ 线程边界
│ ├─ 线程池满:并发处理达到上限
│ ├─ 死锁:多个线程互相等待
│ ├─ 线程泄露:线程未正确回收
│ └─ 上下文切换:线程数过多
│
├─ 磁盘边界
│ ├─ 磁盘满:日志/数据写满
│ ├─ 文件数:inode耗尽
│ ├─ 写入性能:磁盘IO瓶颈
│ └─ 文件锁定:并发写入冲突
│
└─ 网络边界
├─ 带宽:大文件传输
├─ 延迟:高延迟场景
├─ 丢包:网络不稳定
└─ 断网:网络中断
```
**示例(订单系统)**:
```text
内存边界:
- 大订单:包含1000个商品的订单
- 长时间运行:服务运行7天后
- 缓存:订单缓存达到10万条
连接边界:
- 并发下单:1000用户同时下单
- 数据库连接:连接池耗尽
- Redis连接:缓存服务连接数
线程边界:
- 并发处理:100个线程同时处理订单
- 死锁:库存扣减和订单创建死锁
```
> **最容易漏的子项:连接耗尽**(而非内存耗尽)。OOM 通常有人盯着,
> "第 501 个并发请求时连接池满了"这种要靠压测才暴露。
---
## 常见边界漏测(自检时逐条对照)
| 漏测类型 | 典型表现 | 检测方法 |
|---------|---------|---------|
| 隐式边界 | "这个字段不可能那么大"不测边界 | 对所有输入字段强制扫边界,不靠直觉 |
| 组合边界 | 单个字段边界都测了,多字段组合边界没测 | 两两字段边界值交叉测试 |
| 并发边界 | 只测了单用户边界,多用户并发边界没测 | 同一边界条件多用户并发 |
| 累积边界 | 长期运行后才出现的边界问题 | 多次重复操作、海量数据 |
| 恢复边界 | 触发边界后能否恢复assets/boundary-table.md
# 边界分析产出模板
> 复制下面任一块板填写。维度详图见 [`four-dimensions.md`](four-dimensions.md)。
## A. 边界分析表(本技能的主产出)
| 边界 ID | 边界维度 | 边界条件 | 风险等级 | 测试深度 | 预期结果 | 关联场景 ID |
|---------|---------|---------|---------|---------|---------|-----------|
| BD_AMOUNT_001 | 输入边界 | 金额=0 | 高 | 深测 | 提示金额不能为0,拒绝下单 | SC-ORDER-001 |
| BD_AMOUNT_002 | 输入边界 | 金额=0.001(超精度) | 高 | 深测 | 服务端按 2 位精度截断或明确报错,不得静默四舍五入导致资损 | SC-ORDER-001 |
| BD_TIMEOUT_001 | 时间边界 | 支付超时=30分钟 | 高 | 深测 | 自动取消订单,库存回滚 | SC-ORDER-005 |
| BD_TIMEOUT_002 | 时间边界 | 超时前1秒完成支付 | 高 | 深测 | 判定为支付成功,不与自动取消竞态 | SC-ORDER-005 |
| BD_STATE_001 | 状态边界 | 已完成 → 已支付 | 高 | 深测 | 拒绝并返回明确错误码,不产生二次扣款 | SC-ORDER-007 |
| BD_RES_001 | 资源边界 | 1000 用户同时下单最后 1 件库存 | 高 | 深测 | 仅 1 单成功,其余返回售罄;无超卖 | SC-ORDER-009 |
## B. 边界清单(不需要写预期结果时的轻量形态)
```text
输入边界(BD-INPUT-*)
- 6位/20位通过,5位/21位阻断
- 纯数字、带空格、Unicode 字符
- 密码=用户名、密码=历史密码、空密码
状态边界(BD-STATE-*)
- 合法:待支付→已支付
- 非法:已完成→已支付、已取消→待支付
- 临界:支付刚好在超时前 1 秒完成
- 并发:同一订单同时支付和取消
```
## 填写要求
| 字段 | 要求 | 常见错误 |
|------|------|---------|
| 边界 ID | `BD-{模块缩写}_{序号}`,三位序号,同批不重号 | 写成 `BD-XXXX` 占位符 |
| 边界维度 | 四选一:输入边界 / 状态边界 / 时间边界 / 资源边界 | 写成"数值边界""逻辑边界"(无法归类就没法统计覆盖率) |
| 边界条件 | 具体到可执行:`金额=0.001` 而不是"小数" | 写"极端值""特殊情况" |
| 风险等级 | 高(资损/越权/数据错误)/ 中(体验与稳定性)/ 低 | 全标高 |
| 测试深度 | 深测 / 常规 / 冒烟 —— 按风险定,不是所有边界都深测 | 全标深测(等于没分级) |
| 预期结果 | 可验证:具体返回什么、数据处于什么状态 | 写"正确处理" |
| 关联场景 ID | 挂在哪个 `SC-{...}` 场景下;新发现的边界需新建场景 | 留空(断链,场景树无法回溯) |
## 交付前自检
- [ ] 四个维度都扫过(未覆盖的维度已写"未覆盖 + 原因")
- [ ] 每个边界的风险等级与测试深度都不同质(不是全高/全深测)
- [ ] 每条边界都有可验证的预期结果
- [ ] 每条边界都关联到场景 ID
- [ ] 已对照 `four-dimensions.md` 末尾的"常见边界漏测"5 类逐条自查
- [ ] "恢复边界"已验:每种边界超限后立刻执行一次正常操作skill-card.md
## Description: Helps QA teams identify and prioritize edge cases across input, state, time, and resource boundaries. This skill is ready for commercial/non-commercial use. ## Publisher: [kokxi](https://clawhub.ai/user/kokxi) ### License/Terms of Use: MIT-0 ## Use Case: QA engineers and developers use this skill to find testable boundary cases in a scenario tree, assign risk-based test depth, and link each case to an expected result and scenario ID. ### Deployment Geography for Use: Global ## Known Risks and Mitigations: Risk: Real customer, identity, payment, or production data may be exposed when supplying test scenarios. Mitigation: Use synthetic or masked examples instead of pasting sensitive production data. Risk: The suggested unpinned installation command may install the publisher's broader skill suite. Mitigation: Review and trust the publisher and the full suite before choosing to run the installation command. ## Reference(s): - [Boundary analysis table template](assets/boundary-table.md) - [Four-dimension boundary reference](references/four-dimensions.md) - [ClawHub skill release](https://clawhub.ai/kokxi/skills/qa-boundary-deep-dive) ## Skill Output: **Output Type(s):** [Markdown, QA test guidance] **Output Format:** [Markdown boundary-analysis table and dimension-specific checklists] **Output Parameters:** [1D] **Other Properties Related to Output:** [Seven table columns; unique boundary IDs, risk levels, test depth, expected results, linked scenario IDs, and reasons for uncovered dimensions.] ## Skill Version(s): 1.8.0 (source: skill metadata and ClawHub release) ## Ethical Considerations: Users should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.
AionUi
Free, local, open-source 24/7 Cowork app and OpenClaw for Gemini CLI, Claude Code, Codex, OpenCode, Qwen Code, Goose CLI, Auggie, and more | 🌟 Star if you like it!
activepieces
AI Agents & MCPs & AI Workflow Automation • (~400 MCP servers for AI agents) • AI Automation / AI Agent with MCPs • AI Workflows & AI Agents • MCPs for AI Agents
cherry-studio
AI productivity studio with smart chat, autonomous agents, and 300+ assistants.
CopilotKit
The Frontend for Agents & Generative UI. React + Angular
Machine-readable data
The same record, as JSON, for agents and crawlers.
{
"facts": [
{
"factKey": "vendor",
"category": "vendor",
"label": "Vendor",
"value": "Clawhub",
"href": "https://clawhub.ai/kokxi/skills/qa-boundary-deep-dive",
"sourceUrl": "https://clawhub.ai/kokxi/skills/qa-boundary-deep-dive",
"sourceType": "profile",
"confidence": "medium",
"observedAt": "2026-10-11T15:39:26.782Z",
"isPublic": true
},
{
"factKey": "protocols",
"category": "compatibility",
"label": "Protocol compatibility",
"value": "OpenClaw",
"href": "https://www.xpersona.co/api/v1/agents/clawhub-kokxi-qa-boundary-deep-dive/contract",
"sourceUrl": "https://www.xpersona.co/api/v1/agents/clawhub-kokxi-qa-boundary-deep-dive/contract",
"sourceType": "contract",
"confidence": "medium",
"observedAt": "2026-10-11T15:39:26.782Z",
"isPublic": true
},
{
"factKey": "traction",
"category": "adoption",
"label": "Adoption signal",
"value": "1K downloads",
"href": "https://clawhub.ai/kokxi/qa-boundary-deep-dive",
"sourceUrl": "https://clawhub.ai/kokxi/qa-boundary-deep-dive",
"sourceType": "profile",
"confidence": "medium",
"observedAt": "2026-10-11T15:39:26.782Z",
"isPublic": true
},
{
"factKey": "latest_release",
"category": "release",
"label": "Latest release",
"value": "1.8.0",
"href": "https://clawhub.ai/kokxi/qa-boundary-deep-dive",
"sourceUrl": "https://clawhub.ai/kokxi/qa-boundary-deep-dive",
"sourceType": "release",
"confidence": "medium",
"observedAt": "2026-09-29T04:25:29.988Z",
"isPublic": true
},
{
"factKey": "handshake_status",
"category": "security",
"label": "Handshake status",
"value": "UNKNOWN",
"href": "https://www.xpersona.co/api/v1/agents/clawhub-kokxi-qa-boundary-deep-dive/trust",
"sourceUrl": "https://www.xpersona.co/api/v1/agents/clawhub-kokxi-qa-boundary-deep-dive/trust",
"sourceType": "trust",
"confidence": "medium",
"observedAt": null,
"isPublic": true
}
],
"events": [
{
"eventType": "release",
"title": "Release 1.8.0",
"description": "Boundary Deep Dive 1.8.0 - Added comprehensive boundary type tables and four-dimension reference files for fast lookup and guidance. - Updated and streamlined documentation for easier navigation: merged \"when to use\", traceability, depth coverage, and risk quantification into metadata. - Unified boundary analysis output format: fixed 7 columns (boundary ID, dimension, condition, risk, test depth, expected result, linked scenario). - Improved self-check and coverage requirements; non-covered dimensions must now be explicitly explained. - Removed older documentation (skill-card.md) and added clear links to new resources for details and templates.",
"href": "https://clawhub.ai/kokxi/qa-boundary-deep-dive",
"sourceUrl": "https://clawhub.ai/kokxi/qa-boundary-deep-dive",
"sourceType": "release",
"confidence": "medium",
"observedAt": "2026-09-29T04:25:29.988Z",
"isPublic": true
}
]
}Record generated Oct 11, 2026.
