Hegel:Hypothesis 创作者推出多语言属性测试框架
Available in: 中文
Hegel 是 Hypothesis 创作者推出的全新多语言属性测试框架,现已支持 Rust,Go、C++、OCaml 和 TypeScript 即将推出,与 Antithesis 确定性测试平台深度集成。
从 Hypothesis 到 Hegel:属性测试的进化
Python 生态中最具影响力的属性测试库 Hypothesis 的创作者已加入 Antithesis,并推出了 Hegel——一个全新的多语言属性测试库家族,旨在与 Antithesis 的确定性测试基础设施无缝集成。
Hegel 是什么?
Hegel 将 Hypothesis 中经过验证的属性测试质量带到每种编程语言中。开发者只需指定应适用于任何有效输入的属性,库会自动生成测试输入来发现违规。
语言支持
- Rust — 现已可用
- Go — 未来 1-2 周内发布
- C++、OCaml、TypeScript — 各阶段开发中
核心能力
- 永不崩溃测试:验证解析器和处理器能处理任何输入而不 panic
- 往返测试:确保序列化/反序列化保持数据完整性
- 自定义生成器:从基础类型组合复杂输入
- Antithesis 集成:Hegel 发现的 Bug 可在 Antithesis 确定性环境中自动复现
已发现的真实 Bug
Hegel for Rust 已在生产 crate 中发现真实 Bug,包括 fraction crate 解析 "0/0" 时的 panic,以及 rust_decimal 科学计数法转换中零值处理不正确的问题。
为什么重要
属性测试在函数式编程社区中具有变革性,但语言特定实现限制了主流采用。Hegel 的多语言方案可能显著扩大采用范围,特别是在 Rust 和 C++ 占主导地位的系统编程领域。
← Previous: LiteLLM versions 1.82.7 and 1.82.8 compromised on PyPI — Supply Chain AttackNext: Sora Shuts Down: OpenAI's AI Video Generation Service Comes to an End →
0