出于未知原因,Maven 顺序测试 运行(多线程测试)

Maven tests run sequentially (multithreaded tests) for unknown reason

我有一段代码大量使用 CompletableFuture,我的同事已经做了一些测试。

测试似乎在我的机器上通过了,但在他的机器上却失败了。 我发现了这个错误(即使测试在我的机器上通过了),但我想确保我正确地修复了它,而不打扰我的同事(运行 测试)。

出于某种原因,测试中的多线程代码顺序 运行s。

我运行 Maven 是这样测试的:

mvn test -Dtest=CompFutTest -DfailIfNoTests=false -DprintSummary=false

maven-surefire-plugin 控制并发执行。

如果你想要你的测试运行并发然后配置你的surefire插件之一...

<parallel>methods</parallel>
<parallel>classesAndMethods</parallel>

... 取决于您是希望在每个测试用例内还是在测试用例之间并发。

并行值的选择(以及 threadCount 的相关选择)以及 TestNG、JUnit 和 surefire 插件之间的各种兼容性问题在 the docs 中有更详细的说明。