Rust测试编写指南Skill rust-tests-guidelines

此技能提供编写高质量Rust代码测试的全面指南,涵盖测试公共和私有API的策略、使用insta和proptest工具进行输出验证和属性测试、代码组织方法以及处理外部C符号。关键词包括Rust测试、insta、proptest、API测试、测试策略、代码组织、软件测试、Rust编程。

测试 0 次安装 0 次浏览 更新于 3/11/2026

name: rust-tests-guidelines description: Rust测试编写指南

Rust测试编写指南

编写Rust代码新测试的指南。

指南

  1. 测试代码的公共API。
  2. 仅当私有组件高度复杂且难以通过公共API测试时,才测试私有API。
  3. 每当测试输出难以预测或比较时,使用insta
  4. 适当时,使用proptest为关键不变性添加基于属性的测试。
  5. 测试代码应编写得像生产代码一样细心。避免不必要的重复,引入助手以减少样板代码并确保可读性。测试的意图应显而易见,如果不可能,则明确文档化。
  6. 不要在注释中引用确切的行号,因为它们可能会随时间变化。

代码组织

  1. 如果测试不依赖私有API,请将测试放在相关crate的tests目录下。
  2. tests目录应组织为一个crate,有一个main.rs文件和所有测试在模块中。参考trie_rs/tests目录作为示例。
  3. 如果测试必须依赖私有API,请使用#[cfg(test)]模块将它们与测试的代码放在一起。

处理外部C符号

查看CONTRIBUTING.md以获取有关如何处理Rust测试中未定义C符号的说明。