温馨提示×

Linux系统中Rust如何编写单元测试

小樊
51
2025-09-27 06:05:03
栏目: 编程语言

在Linux系统中,使用Rust编写单元测试非常简单。Rust内置了一个名为#[test]的属性,可以用于标记测试函数。要编写单元测试,请按照以下步骤操作:

  1. 创建一个新的Rust库或二进制项目(如果尚未创建):
cargo new my_project --lib

或者

cargo new my_project --bin
  1. src/lib.rs(对于库项目)或src/main.rs(对于二进制项目)中,编写你想要测试的函数。例如:
// src/lib.rs 或 src/main.rs

pub fn add(a: i32, b: i32) -> i32 {
    a + b
}
  1. 在同一个文件中,编写一个以test_开头的测试函数。使用#[test]属性标记该函数。在这个例子中,我们将编写一个测试add函数的测试用例:
#[cfg(test)]
mod tests {
    use super::*;

    #[test]
    fn test_add() {
        assert_eq!(add(1, 2), 3);
        assert_eq!(add(-1, 1), 0);
        assert_eq!(add(0, 0), 0);
    }
}

注意:

  • #[cfg(test)]属性确保测试代码仅在运行测试时编译和执行。
  • use super::*;导入当前模块的所有公开项,以便在测试中使用。
  • #[test]属性标记测试函数。Rust的测试运行器会自动发现并执行所有带有#[test]属性的函数。
  1. 保存文件并运行测试:
cargo test

这将编译项目并运行所有单元测试。测试结果将显示在终端中,包括通过的测试数量和失败的测试(如果有)。

你可以根据需要添加更多的测试函数和测试用例,以确保代码的正确性和健壮性。

0