有没有办法列出 Cargo 项目中的所有测试而不运行它们?

Max*_*phy 3 rust rust-cargo

等待大型测试套件运行很痛苦,因此我收集每个测试的持续时间cargo test并使用简单的启发式方法快速查找失败(我按失败概率/上次运行持续时间排序并按该顺序运行测试)。

这很好,但它无法了解新测试。如果我可以列出所有测试,我就可以检测新测试并将它们添加到最先运行的高风险组中。

Sve*_*ach 8

您可以运行cargo test -- --list以列出所有测试和基准。输出格式为:

glonk: benchmark
hurz: test

1 test, 1 benchmark
Run Code Online (Sandbox Code Playgroud)

您可以通过传递--format=terse标志来抑制摘要行。

请注意,--list这是传递给测试二进制文件本身的命令行标志,而不是 Cargo 标志。您可以使用cargo test -- --help.