Rust在Ubuntu上如何进行单元测试
在Rust的世界里,单元测试不是外挂插件,而是语言自带的硬核能力。你只需要敲下cargo test,就能让整个测试流程跑起来。下面,咱们就以Ubuntu环境为例,看看从头到尾怎么操作。 先把Rust装上。如果你还没装,跑这条命令就行: curl --proto '=https' --tlsv1.2
在Rust的世界里,单元测试不是外挂插件,而是语言自带的硬核能力。你只需要敲下cargo test,就能让整个测试流程跑起来。下面,咱们就以Ubuntu环境为例,看看从头到尾怎么操作。

-
先把Rust装上。如果你还没装,跑这条命令就行:
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh装完之后记得刷新一下shell环境,让新安装的工具链生效:
source $HOME/.cargo/env -
创建一个新项目(要是你手头已经有项目,跳过这步):
cargo new my_project cd my_project -
写测试。Rust的惯例是把测试代码和被测试代码放在同一个文件里,但要用
#[cfg(test)]模块包起来。比方说,你在lib.rs里定义了一个add函数,那测试可以写成这样:// 在 lib.rs 中 #[cfg(test)] mod tests { use super::*; #[test] fn test_add() { assert_eq!(add(2, 2), 4); } } -
跑测试只需要一条命令:
cargo test它会自动编译你的代码和测试,然后执行所有标记了
#[test]的函数。结果会直接打印在终端里,一目了然。 -
测试结果怎么看?
cargo test会列出每个测试的通过或失败状态。如果某个测试挂了,它会告诉你失败的原因和具体位置,方便你快速定位问题。 -
有时候你只想跑一个特定的测试,比如只跑
test_add,那就在命令后面加上测试名:cargo test test_add -
如果某些测试暂时不想跑(比如特别耗时的测试),可以给它加上
#[ignore]属性,它们就会被跳过:#[test] #[ignore] fn test_something_expensive() { // 这个测试将会被忽略 } -
想看到更详细的输出,比如测试过程中打印的日志?加上
--nocapture标志就行了:cargo test -- --nocapture
以上就是Ubuntu上Rust单元测试的基本流程。别看步骤简单,Rust的测试框架其实很强大——参数化测试、子测试、集成测试,这些高级功能一个都不少。等你熟练了,自然会体会到它的威力。
Adobe Acrobat Pro 是面向办公、法务、财务、教育及出版用户的专业PDF处理软件,可在Mac上创建、编辑、转换、合并和保护文档,并提供OCR文字识别、表单、批注、内容比较、敏感信息遮盖及电子签名功能。
Blender 是一款免费开源、跨平台的专业 3D 创作软件,集建模、动画、渲染、视频编辑与视觉合成等功能于一体,广泛应用于影视动画、游戏设计和建筑可视化等领域。软件支持 Cycles 物理渲染器与 Eevee 实时渲染引擎,并提供多边形建模、骨骼绑定、物理模拟等专业工具。Blender 兼容 Windows、macOS 和 Linux 系统,安装包轻巧、运行流畅,依托活跃的全球开发者社区持续更新,是从初学者到专业创作者都值得选择的正版 3D 创作工具。
Shapr3D是一款面向工业设计、机械工程、建筑概念和三维打印工作流的CAD软件。Mac版采用Parasolid建模内核,支持草图约束、实体建模、工程图、可视化渲染及常见CAD格式交换,并可通过账户在多台设备之间同步项目。
AutoCAD 是 Autodesk 推出的专业计算机辅助设计软件,Windows 版支持精确二维绘图、三维实体与曲面建模、图纸标注、布局发布和任务自动化,并包含多套行业专业化工具组合,适用于建筑、机械、电气、工程建设及制造设计人员。
Adobe Acrobat Pro 是面向专业 PDF 工作的综合解决方案,可在 Windows 中创建、编辑、转换、比较、整理和保护文档,并支持表单、电子签名、扫描件文字识别及敏感信息永久遮盖。订阅还包含网页、移动服务和云端协作能力,
Blender 是一款免费开源、跨平台的专业 3D 创作软件,集建模、动画、渲染、视频编辑与视觉合成等功能于一体,广泛应用于影视动画、游戏设计和建筑可视化等领域。软件支持 Cycles 物理渲染器与 Eevee 实时渲染引擎,并提供多边形建模、骨骼绑定、物理模拟等专业工具。Blender 兼容 Windows、macOS 和 Linux 系统,安装包轻巧、运行流畅,依托活跃的全球开发者社区持续更新,是从初学者到专业创作者都值得选择的正版 3D 创作工具。













