SBT 运行 子模块中的单个测试 class

SBT run single test class in submodule

我有一个包含模块 A、模块 B 和模块 C 的多模块项目。我想 运行 我的 class com.helpme.run.MyTest 来自 moduleB.

我猜 sbt 命令应该是这样的:

sbt "project moduleA" --mainClass com.helpme.run.MyTest 测试

但运气不好。请帮忙!!谢谢!

首先,您可以 运行 使用 testOnly

进行测试
$ sbt testOnly MyTest

但是如果你的项目是一个多项目sbt项目并且你在多个项目中有同名的相同测试class你可以navigate between projects通过project 命令,然后 运行 测试

$ sbt
> project moduleA
> testOnly MyTest

请注意,您必须先 运行 sbt 然后 运行 sbt shell.

中的其余命令

取决于您的项目配置testOnly 无法工作

你也可以试试这个命令:

sbt "project myProject" "testOnly com.this.is.my.Test"