如何仅 运行 库和集成测试?

How to run library and integration tests only?

我有一个包含库和两个可执行文件的项目。当我 运行 cargo test 时,它 运行 有五个可执行文件:库和两个可执行文件的单元测试、集成测试和文档测试。

因为我只有库和集成测试,所以我得到了烦人的输出,如:

running 0 tests                                                           
test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out

我尝试用 Cargo 参数过滤它但失败了。如果我使用 --lib,则没有集成测试 运行。我没有找到仅 运行 集成测试或跳过文档或可执行测试的方法。

有什么方法可以 运行 只进行集成和库单元测试吗?

好吧,我找到了解决办法。

包清单文件 (Cargo.toml) 必须这样修改:

[lib]
doctest = false

[[bin]]
test = false

(因为我无法在评论中格式化...)

您需要指定您的二进制名称(如果您有多个名称,则一定要指定):

[[bin]] 
name = "check_dir" 
test = false

[[bin]]
name = "other"
test = false