自上次更新 2021.02 以来 IntelliJ 无法运行测试

时间:2021-08-01 20:44:45

标签: java intellij-idea junit

我有一个很烦人的问题。

我最近更新了我的 IntelliJ 到 2021.02

从那以后我就不能单独运行 junit 测试了。如果我运行带有测试的 maven,它就可以工作,并通过所有测试构建成功。但是,如果我想单独执行测试类或方法(CTRL+SHIFT+F10),则会出现以下异常:

org.junit.runners.model.InvalidTestClassError: Invalid test class 'com.my.project.ServiceTestSpec':
  1. No runnable methods

    at org.junit.runners.ParentRunner.validate(ParentRunner.java:525)
    at org.junit.runners.ParentRunner.<init>(ParentRunner.java:102)
    at org.junit.runners.BlockJUnit4ClassRunner.<init>(BlockJUnit4ClassRunner.java:84)
    at org.junit.runners.JUnit4.<init>(JUnit4.java:23)
    at org.junit.internal.builders.JUnit4Builder.runnerForClass(JUnit4Builder.java:10)
    at org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:70)
    at org.junit.internal.builders.AllDefaultPossibilitiesBuilder.runnerForClass(AllDefaultPossibilitiesBuilder.java:37)
    at org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:70)
    at org.junit.internal.requests.ClassRequest.createRunner(ClassRequest.java:28)
    at org.junit.internal.requests.MemoizingRequest.getRunner(MemoizingRequest.java:19)
    at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:50)
    at com.intellij.rt.junit.IdeaTestRunner$Repeater.startRunnerWithArgs(IdeaTestRunner.java:33)
    at com.intellij.rt.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:235)
    at com.intellij.rt.junit.JUnitStarter.main(JUnitStarter.java:54)

我从 IntelliJ 中删除了缓存,重新加载了我的应用程序,重建了 Maven,重新加载了 Maven,重新加载了所有东西。 非常奇怪的是,在重新加载所有内容后,我可以单独运行一个测试类,但只能运行一次。对于下一次测试运行,我再次收到上述错误。什么...

我使用 JDK 15.0.1

这是我当前的 IntelliJ 版本:

enter image description here

1 个答案:

答案 0 :(得分:3)

这是 IntelliJ IDEA 中的一个错误,将在 2021.2.1 中修复。见https://youtrack.jetbrains.com/issue/IDEA-274589

以下是可用的解决方法:

  1. 降级到之前的版本,2021.1.x(从站点下载发行版)

  2. 在包中运行测试

  3. 用你想运行的类运行模式配置(只影响类/方法)

  4. 降级 spock 版本(适用于 2.0 之前的版本)