未找到类:在Android Studio中运行单元测试时清空测试套件

Koi*_*itt 60 android unit-testing

我的Android应用程序有一个测试套件,所有单元测试运行正常.但是,每当我在其中一个单元测试类中进行单个更改时(例如ModelUnitTests),当尝试再次运行该类时,我会收到此消息

Process finished with exit code 1
Class not found: "xxx.xxxxxx.xxx.ModelUnitTests"Empty test suite.
Run Code Online (Sandbox Code Playgroud)

如果我做了一个gradle清理,然后再次运行类测试,它运行正常(但需要4分钟才能完成...),但随后一个新的更改将再次打破它.

关于如何解决这个问题的任何建议?我不确定应该发布哪种测试配置.我正在使用Unit Tests工件,我的测试位于 module/src/test/package文件夹中

Rob*_*nde 73

我遇到了类似的问题,因为我首先创建了一个具有相同类名的单元测试.当我创建仪表单元测试时,我收到了错误.

为了解决这个问题,我进入了运行图标左侧的编辑配置.然后在单元测试下面,它是'冲突'类,我删除了.单击Apply/Ok.然后我右键单击班级名称,点击运行并瞧,它的工作原理.

  • 在我的情况下,原因是我在某个点上切换到了一个发布版本配置,它具有不同的applicationId.即使我切换回调试配置,Android Studio仍继续尝试使用发布的applicationId进行测试. (3认同)

Edm*_*son 14

我有同样的问题.我注意到正在测试的方法在Run/Debug配置下拉列表中显示为:
TestClassName.testMethod()
而不是正确的:
testMethod()

我通过删除TestClass.testMethod()给出此错误的测试方法的Run/Debug配置来修复它,然后重新运行测试.

如果重新创建相同的问题,请删除不正确的运行/调试配置,然后右键单击测试方法并选择:(
Create 'testMethod()'...
而不是运行或调试)以创建工作配置.


Jho*_*los 13

Android Studio上的修复程序是:

  • 步骤1.-转到运行/调试配置
  • 第2步.-转到Android测试部分
  • 步骤3.-删除测试配置文件( - )
  • 步骤4.-按"应用"和"确定"
  • 步骤5.-再次运行测试

  • 谢谢,这有效,似乎是 Android Studio 的错误。我还必须从单元测试部分删除我的测试,由于不明原因,它被错误地注册在那里。 (2认同)

est*_*stn 12

刚碰到这个 - 在Kotlin写我的单元测试.在我的情况下,事实证明我忘了在给定的模块build.gradle文件中添加kotlin插件:

apply plugin: 'kotlin-android'
Run Code Online (Sandbox Code Playgroud)


Squ*_*mon 6

我有这个问题,这个帖子(或其他高度可见的Stack Overflow帖子)的答案都没有为我解决.
但是,手动运行gradle任务compileTestKotlin似乎已经解决了我的问题.

这是针对Kotlin测试的Android Studio 3.1.2