我对Cargo如何运行测试感到困惑。
我创建了一个货物项目,它为我添加了main.rs
。如果我在其中添加#[test]
个功能,则会找到并运行cargo test
。如果我将foo.rs
文件作为兄弟添加到main.rs
并在其中添加测试,则无法找到并运行它们。
我错过了什么微妙之处?我是否必须以某种方式向Cargo讲授新文件?
答案 0 :(得分:5)
Cargo不会只编译恰好位于源目录中的任何文件。为了使Cargo能够找到文件,必须在main.rs
/ lib.rs
或某个子模块中将其作为模块引用。
例如,在main.rs
:
mod foo;
就是这样。