SkillsScout
ENG-QUALITY / 工程效率与代码质量

property-based-testing-trailofbits-skills

收录日期 2026-07-16·来源仓库 ↗·2026-07-22 修订
受欢迎程度
8
可用程度与相关性
9
安全性
9
8.7SCOUT SCORE

一、基本信息

项目 内容 数据来源
正式名称 property-based-testing 合集仓库子目录名(见下方说明)
所属合集仓库 trailofbits/skills(Trail of Bits 官方 Claude Code 技能市场) GitHub
作者/维护者 Henrik Brodin(opensource@trailofbits.com),发布方 Trail of Bits 插件 marketplace.json
来源链接 https://github.com/trailofbits/skills/tree/main/plugins/property-based-testing
许可证 Creative Commons Attribution-ShareAlike 4.0(CC BY-SA 4.0) 仓库根 LICENSE
所属仓库整体 Stars/Forks 6,130 / 541(:该数字属整个合集仓库,不代表本技能自身热度,仅供了解仓库整体规模) GitHub API
该技能自身活跃度 仓库内提及 “property-based-testing” 的 Issue/PR 共 3 条(1 Issue + 2 PR,含一条由真实使用反馈驱动的“补充失败解读指南”PR) GitHub Search API
最新版本 1.1.1 插件 marketplace.json
安装方式 Claude Code / Codex 插件市场一条命令安装(见第十章) 官方 README

二、功能介绍与亮点

property-based-testing 教 Claude 判断“什么时候该写属性测试(PBT)而不是普通用例测试”,并给出可执行的生成路径。核心是一张属性目录表:往返(decode(encode(x))==x)、幂等、不变量、交换律、结合律等 10 种通用属性公式,配合“何时触发”的自动检测清单(序列化对、解析器、归一化函数、校验器、智能合约状态不变量等)。

亮点一是决策树式的渐进式文档结构:SKILL.md 本身只有概览与判断逻辑,具体怎么生成测试、怎么设计输入策略、怎么重构不可测代码、怎么审查已有 PBT 测试、怎么解读测试失败,全部拆到 7 篇独立参考文档(generating/strategies/design/refactoring/reviewing/interpreting-failures/libraries),按任务类型索引查阅,避免一次性塞给 Claude 过长上下文。亮点二是跨语言覆盖广:Python(Hypothesis)、JS/TS(fast-check)、Rust(proptest/quickcheck)、Go(rapid/gopter)、Java(jqwik)、Scala(ScalaCheck),以及 Solidity/Vyper 智能合约(Echidna/Medusa)均有对应库指引。亮点三是内置“拒绝借口清单”(如“测试失败就是有 bug”这类常见误判),帮助 Claude 更准确地判断 PBT 失败到底是真 bug 还是测试策略问题。

三、适用场景

固定分类:工程效率与代码质量

初中级开发者编写数据序列化/解析函数时,用它判断该写属性测试还是普通用例测试。同样适用于:审查已有代码中涉及编解码、归一化、校验器的模块并补强测试覆盖;设计新功能时用“属性驱动开发”提前想清楚不变量;智能合约开发者验证状态不变量。受益人群:测试覆盖率不足、但不确定该往例子里加多少边界情况的中初级工程师;希望把测试设计标准化、减少“漏测边界情况”的技术负责人。

四、跨 Agent 兼容性

Agent 结论 依据
Claude Code 原生支持 官方安装方式即 Claude Code 插件市场机制(/plugin marketplace add trailofbits/skills
Codex 原生支持 仓库 README 明确声明“Codex 可直接加载 Claude 插件市场”,并给出 codex plugin marketplace add 专用安装命令
OpenClaw 未验证 已抓取材料未提及 OpenClaw 专门支持,未为此单独搜索
Hermes Agent 未验证 同上

五、推荐理由

市面上多数“测试类”技能要么是通用的 TDD 流程指导,要么绑定特定测试运行器命令,很少有专门教“该给这段代码写什么样的测试用例”的方法论型技能。property-based-testing 把“何时用属性测试、用哪种属性公式、生成策略怎么设计”标准化成决策树和查询表,且全篇是纯文档指导、不声明任何 Bash/执行权限,安全面小。作为 Trail of Bits(知名安全审计公司)技能市场的一员,还额外覆盖了智能合约场景,这是同类测试方法论技能里少见的。

六、评分

维度 分数 说明
受欢迎程度 8 Trail of Bits 官方发布;仓库整体 6,130 星属合集仓库、不代表本技能自身热度,可参考的是该子技能自身的 3 条独立 Issue/PR 记录(含真实使用反馈驱动的功能补充)与 5 个独立第三方技能市场站点(claudemarketplaces.com、claudepluginhub.com、trailofbits-skills.mintlify.app、zread.ai、SourceForge 镜像)收录作为佐证
可用性 9 插件市场一条命令安装;SKILL.md + 7 篇参考文档结构清晰、渐进式披露;最近一次实质性提交为 2026-06-05(约 6 周前);纯文档技能,无付费依赖、无需额外工具安装
安全性 9 见下方安全检查清单
综合评分 8.7 三项均值

安全检查清单

检查项 结果
① Shell 命令与权限范围 SKILL.md frontmatter 未声明 allowed-tools,全篇为纯指导性文档,未发现要求执行 Bash/Shell 命令的内容
② 运行时联网外发 未发现任何联网回传数据的行为
③ API Key/凭据 不需要任何 API Key 或凭据
④ 可疑指令排查 已完整抓取 SKILL.md 全文,未发现 prompt injection 或试图变更执行流程/访问文件凭据的隐藏指令
⑤ 作者/组织信誉 Trail of Bits 官方账号发布,仓库另有“Trophy Case”记录用该市场内技能发现的真实安全漏洞(如 ML-DSA 签名实现的时序侧信道),信誉较高
⑥ License CC BY-SA 4.0,条款清晰,衍生分发需遵守 ShareAlike 条款
⑦ 最近维护 该子技能最近一次实质提交 2026-06-05;仓库整体持续活跃(最近一次 push 2026-07-15)

纯文档、无代码执行、无外联,且为知名安全公司官方出品,定为 9 分。

七、跟同类 Skills 相比的优势

对比对象 定位 与本 skill 的差异
test-driven-development-addyosmani-agent-skills TDD 红绿重构工作流方法论 关注“先写测试再写实现”的开发节奏,不规定测试用例本身该怎么设计;property-based-testing 补的正是“用例怎么设计”这一环
modern-python-trailofbits-skills(同仓库) 覆盖 uv/ruff/ty/pytest/prek 整条 Python 工具链 测试只是其中一小环节,不深入测试用例设计方法论
mutation-testing(trailofbits/skills 同仓库子技能) 对已有测试做“变异体检”,验证测试是否足够严格,依赖 mewt/muton 专用工具 是测试质量的事后体检,property-based-testing 是事前设计;后者无需安装额外工具,纯文档即可开箱使用

核心差异化:在同类测试技能中,property-based-testing 是少见地专注“测试用例该怎么设计”这一方法论环节、且跨语言覆盖最广(含智能合约)的一个,与 TDD 流程类、工具链类技能形成互补而非重复。

八、用户评价

  1. Tessl.io 技能质量评测平台:给出综合评分 90 分(质量分 87%、影响力评分 97%,“1.07x 同批 3 个评测场景平均分”),评价其“结构良好、简洁,通过清晰的决策树将具体工作路由到一层深的参考文档,且对’何时不该用 PBT’有较强的边界提示”。(来源:tessl.io registry)
  2. claudemarketplaces.com 收录了该技能,但页面未展示用户评分或评论内容。

该技能目前在独立社区(Reddit/HN/X)层面尚无具名的直接用户评价。

九、其他补充

技能文档内置“属性强度层级”(从弱到强:No Exception → 类型保持 → 不变量 → 幂等 → 往返),帮助 Claude 在多个可选属性中优先选择约束力更强的一种,而不是止步于“不崩溃”这种最弱验证。

十、安装使用方式

Claude Code 插件市场(推荐):

/plugin marketplace add trailofbits/skills
/plugin install trailofbits/skills/plugins/property-based-testing

Codex:

codex plugin marketplace add trailofbits/skills
codex plugin add property-based-testing@trailofbits

安装后注意事项: 安装后无需重启;直接在涉及编解码、解析、归一化、校验器的开发或测试审查场景中提出需求即可触发;技能会主动建议是否改用属性测试,用户拒绝后不会反复打扰。

十一、注意事项