【发布时间】:2017-12-10 09:39:29
【问题描述】:
我的测试共享一个公共资源并且不能同时执行。这些测试使用cargo test 失败,但使用RUST_TEST_THREADS=1 cargo test。
我可以修改测试以等待全局互斥锁,但如果有任何更简单的方法可以强制 cargo 为我设置此环境变量,我不想弄乱它们。
【问题讨论】:
-
尽管我很喜欢重复,但这似乎不是“有什么方法可以告诉 Cargo 在主线程上运行测试吗?”的重复。这个问题专门询问是否有办法在文件系统中的某处设置线程数,以便不需要传递环境变量或命令行选项。对于那个问题,即使将线程数设置为 1 也不起作用,因为它仍然是与 main 分开的线程。
-
有一个open PR 建议向测试运行器添加一个类似
#[serial]的属性,这将导致标记的测试无法并行运行,但任何人都猜测这是否会被接受。
标签: testing rust rust-cargo