我在 mod
中有很多方法。这些方法需要测试,但它们是私有(private)的。我目前在同一个 mod
中进行单元测试,但我不确定这是正确的方法,因为我混合了两种不同的东西。
我应该将我的单元测试放在不同的文件中吗?如果是这样,我该如何测试私有(private)方法?
最佳答案
建议将测试放在它们自己的模块中。该模块应该是您要测试其代码的模块的子模块(它可以在相同或不同的文件中定义)。
#[cfg(test)]
mod tests {
#[test]
fn test_some_stuff() {
// ... test code ...
}
}
私有(private)方法不是子模块私有(private)的,但您仍然需要使用 use super::some_name;
导入它们。
顺便说一句,这都在 test organization 中进行了解释。 Rust Book 的第 (11.3) 节。
关于unit-testing - 应该如何组织 Rust 单元测试?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25107526/