我有一个很烦人的问题。
我最近更新了我的 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 版本:
答案 0 :(得分:3)
这是 IntelliJ IDEA 中的一个错误,将在 2021.2.1 中修复。见https://youtrack.jetbrains.com/issue/IDEA-274589
以下是可用的解决方法:
降级到之前的版本,2021.1.x(从站点下载发行版)
在包中运行测试
用你想运行的类运行模式配置(只影响类/方法)
降级 spock 版本(适用于 2.0 之前的版本)