货物未在顶级文件中运行测试

问题描述 投票:3回答:1

我对Cargo如何运行测试感到困惑。

我创建了一个Cargo项目,它为我添加了一个main.rs。如果我在那里添加#[test]函数,它们就会被发现并与cargo test一起运行。如果我将foo.rs文件作为兄弟添加到main.rs并在那里添加测试,则找不到并运行它们。

我错过了什么微妙之处?我是否必须以某种方式向Cargo讲授新文件?

unit-testing module rust rust-cargo
1个回答
5
投票

Cargo不会只编译恰好位于源目录中的任何文件。为了让Cargo找到一个文件,它必须在main.rs / lib.rs或某个子模块中作为模块引用。

例如,在你的main.rs中:

mod foo;

而已。

© www.soinside.com 2019 - 2024. All rights reserved.