我将Android Studio更新到3版本之后,所有位于Java模块中的Spock测试在尝试从应用程序内运行时(右键单击Groovy文件夹->运行“Groovy中的测试”)都无法运行。我收到以下错误提示:
“找不到类:package.name.classname”空测试套件。”
如果我尝试运行单个测试,也会出现相同的情况。
如果我从Gradle面板运行test任务,则会出现以下错误:error. Cause: unknown.
另一方面:
另一方面:
- 任何安卓模块中的Spock测试都能够正常运行。
- 我所有模块中的Java测试都能够正常运行。
- 当使用Gradle (gradlew clean test) 在AS之外运行时,所有测试(包括Spock和Java)都能够正常运行。
我的设置:
- gradle v4.1
- android gradle插件 v3.0.0
- Java版本兼容性 v1.8
- 在我的Java模块中,我使用gradle groovy插件
- 在我的Android模块中,我使用groovy android gradle插件
在谷歌和这里搜索后,我尝试了以下几件事情:
- 将Android Gradle插件更改回v2.3.3,Gradle更改为v3.3
- 尝试将所有Groovy类复制到build/classes/java/test中
src/test/groovy
还是src/test/java
目录下? - Leonard Brüningssrc/test/groovy
。 - le0nidassourceSets { test { groovy { // Workaround for issue https://issuetracker.google.com/issues/65712492 // regarding to "Class not found .... Empty test suite" issue outputDir = sourceSets.test.java.outputDir } } }
是的,该线程中的最后一条评论是我发表的。 - Herman Cheung