property-based-testing

文档 社区
解读按原文结构重写,命令、链接、术语均保留;右侧可核对作者原始 SKILL.md

原文结构

  • Property catalog:Property · Formula · Where it applies Roundtrip · decode(encode(x)) == x · Serialization, conversion pairs Inverse · f(g(x)) == x · encrypt/decrypt, compress/decompress
  • The two ways a property test asserts nothing:Tautology. assert add(a, b) == a + b restates the implementation; no bug they share can fail it. Pick a property that constrains the function without recomputing it. Note the exception: f(x) == f(x) is a genuine determinism property when f
  • Where to look next:Load the one that matches the task in front of you: Task · File Writing new tests, designing strategies · references/generating.md

适用与边界

  • 当前原文没有单列适用场景。
  • 当前原文没有单列不适用场景或限制。

原文中的明确线索

  • 要点:「Tautology.」、「Vacuity.」、「An example test asserts one point.」、「Check first whether the shape is missing or merely buried.」、「Strength ordering, weakest to strongest: no crash → type preservation → invariant → idempotence → roundtrip / oracle.」、「Assert the strongest property the code supports.」、「- Tautology.」、「If the project already uses a PBT library, just write the tests in it.」
  • 文件与命令decode(encode(x)) == xf(g(x)) == xnew(x) == reference(x)f(f(x)) == f(x)issorted(sort(x))f(a, b) == f(b, a)f(f(a,b), c) == f(a, f(b,c))f(x, e) == x

流狐整理:以上内容来自当前 SKILL.md 的章节与原词;未补写作者没有声明的工具、兼容性或能力。

流狐档案 作者与许可取自来源;运行、权限和网络为流狐检测或估算
流狐分类
文档
作者声明 Agent
未找到明确声明;不据此推断已兼容或已测试
静态检查
88 / 100 · 启发式扫描,不代表运行安全
作者 / 版本 / 许可
@trailofbits · 未声明 license
流狐 Token 估算
低消耗
流狐接入估算
即装即用
是否需要外部 API Key
未发现要求
检测到的系统要求
未声明
底层运行要求
未声明
检测到的文件与系统行为
  • 只读
  • 允许写入 / 修改
检测到的网络行为
仅限本地
安装命令数
无(仅作为资料)

档案由构建时根据 SKILL.md 与安装命令自动衍生,可能与作者实际意图存在差异。

需要注意: 未限定 allowed-tools,默认拥有全部工具权限。

输出预览 property-based-testing.preview
作者没有在当前 SKILL.md 中定义固定输出样例。

讨论

基于 GitHub Discussions。登录 GitHub 即可参与讨论、点赞、订阅更新。