当前位置: 首页 > 知识库问答 >
问题:

如何使用Gradle和JUnit5只运行特定的测试?

艾飞宇
2023-03-14

使用Gradle及其JUnit4支持,我可以使用--tests选项选择特定的测试,如下所示:

$ ./gradlew test --tests de.mp.BarMT

在使用JUnit5 Gradle任务时,此选项无效。当从命令行使用test任务时,它会被无人值守地忽略。真正的工作是由JUnitPlatformTest完成的,它不支持以下选项:

$ ./gradlew clean junitPlatformTest --tests de.mp.BarMT
…
Problem configuring task :junitPlatformTest from command line.
> Unknown command-line option '--tests'.

JUnit5插件支持选择特定的测试吗?

共有1个答案

许永年
2023-03-14

回答我自己…很多时间过去了,新的版本来了,我可以确认使用Gradle 5.4.1和JUnit Jupiter平台1.4.2,简单的配置:

test {
    useJUnitPlatform()
}

将允许运行https://stackoverflow.com/a/31468902/2621917中所示的单个测试,即使使用奇怪的名称(来自Kotlin):

gradle test --tests 'HtmlForwardInterceptorTest.should forward requests'
 类似资料:
  • 在成功运行JUnit4测试后,我试图将JUnit5与Gradle一起使用。 而我唯一的测试包含 我觉得这很奇怪! 我的生成文件是 我的文件夹结构是,使用包, 在我使用的IntelliJ2017.1.3中,模块结构如下所示 因为Gradle现在想要源代码和测试在他们自己的包中。 使用gradle在intellij中从JUnit4升级到JUnit5 链接回到上面的问题,并链接到这个Jetbrains博

  • 是否可以只通过Gradle调用某些Android测试? 我读过关于如何在gradle上只运行一个测试类,从命令行测试,但这是一种相当复杂的方法。 这是Android Studio推出具体测试类的方式:

  • 我有一个Spring项目,在那里我编写了一些单元和集成测试。现在我要创建用于运行所有单元测试、所有集成测试的自定义任务和用于运行两者的一个任务。但我怎么能这样做呢?

  • 我有一个混合的Java/Scala项目,包含JUnit和ScalaTest测试。使用scalatest插件,Gradle在中运行scalatest测试,但忽略中的JUnit测试。没有插件,Gradle运行JUnit测试,但忽略Scala。我错过了什么把戏? 我的: ETA:我知道有可能对Scala测试进行注释,以迫使它们与JUnit测试运行器一起运行。我正在寻找一个一站式的解决方案,它不需要编辑每

  • 我是新手。我使用Gradle1.10和Ubuntu13。 我想知道是否有任何命令只执行一个单元测试类,类似于SBT中的。