如何仅将依赖项功能用于测试?

aep*_*l0n 9 testing rust rust-cargo

说,我有一个具有可选功能的依赖项的箱子.现在这个功能主要用于测试,但是crate本身是整个代码的依赖.是否有可能指示货物仅将该功能用于测试?

在我的具体示例中,可选功能取决于quickcheck,我不一定希望对我的箱子用户强制依赖.

Bur*_*hi5 7

您可以像开发常规依赖项一样使用特性来实现开发依赖性.在它的情况下quickcheck,它的唯一功能是collect_impls,所以你可以添加到你的Cargo.toml:

[dev-dependencies.quickcheck]
version = "*"
features = ["collect_impls"]
Run Code Online (Sandbox Code Playgroud)

NB这实际上是错误的quickcheck.我刚修好0.1.29.