在Debian上编写和执行Rust的单元测试,你需要遵循以下步骤:
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
按照提示操作,最后将Rust添加到你的PATH环境变量中。
cargo
命令创建一个新的Rust项目。例如,创建一个名为my_project
的项目:cargo new my_project
这将在当前目录下创建一个名为my_project
的新文件夹,其中包含一个简单的Rust程序和一个tests
目录。
src/lib.rs
(对于库项目)或src/main.rs
(对于可执行程序项目)中编写你的代码。然后,在同一文件中编写单元测试。要编写测试,你需要使用#[test]
属性。例如,我们可以在src/lib.rs
中编写一个简单的测试:pub fn add(a: i32, b: i32) -> i32 {
a + b
}
#[cfg(test)]
mod tests {
use super::*;
#[test]
fn test_add() {
assert_eq!(add(1, 2), 3);
}
}
在这个例子中,我们定义了一个名为add
的函数,它接受两个i32
参数并返回它们的和。然后,我们创建了一个名为tests
的模块,并在其中编写了一个名为test_add
的测试函数。这个测试函数使用assert_eq!
宏来检查add
函数的输出是否与预期相符。
cargo test
命令。这将编译项目并运行所有测试。例如:cargo test
输出应类似于以下内容:
running 1 test
test tests::test_add ... ok
test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
这表示你的单元测试已成功通过。
--nocapture
选项运行cargo test
命令:cargo test -- --nocapture
这将显示每个测试的详细输出,包括断言失败时的实际值和期望值。
总之,在Debian上编写和执行Rust的单元测试非常简单。只需遵循上述步骤,你就可以轻松地为你的Rust项目编写和运行单元测试。