在Rust中,集成测试通常与单元测试一起进行。要在Rust工作空间中集成测试,请按照以下步骤操作:
- 在
Cargo.toml
文件中,确保已经启用了testing
特性。这是默认启用的,但如果你没有看到它,可以手动添加:
[features] testing = []
-
在工作空间的根目录下创建一个名为
tests
的文件夹。在这个文件夹中,为每个需要测试的库创建一个单独的测试文件。文件名应以test_
开头,后跟库的名称。例如,如果你有一个名为my_library
的库,你可以创建一个名为test_my_library.rs
的测试文件。 -
在测试文件中,使用
#[cfg(test)]
属性来标记测试函数。这将确保只有在启用了测试特性时才会运行这些函数。例如:
#[cfg(test)] mod tests { use super::*; #[test] fn test_example() { assert_eq!(2 + 2, 4); } }
- 在
Cargo.toml
文件中,添加一个名为test
的构建配置,以便在运行cargo test
时执行所有测试。这是默认启用的,但如果你没有看到它,可以手动添加:
[profile.dev.package.my_workspace] test = true
将my_workspace
替换为你的工作空间名称。
- 在工作空间的根目录下运行
cargo test
。这将执行所有测试文件中的测试函数。
注意:如果你的工作空间中有多个库,并且你想为特定库运行测试,可以在cargo test
命令后添加库的名称,例如:cargo test my_library
。这将仅运行my_library
库的测试。