【问题标题】:Running Android tests (junit) in Android Studio does not work Exception in thread “main” java.lang.NoClassDefFoundError: junit/textui/ResultPrinter在 Android Studio 中运行 Android 测试(junit)不起作用线程“main”中的异常 java.lang.NoClassDefFoundError: junit/textui/ResultPrinter
【发布时间】:2015-04-30 12:36:05
【问题描述】:

当我在 Android Studio 中运行 Andriod 测试 (junit) 测试时,我收到以下错误消息。 线程“主”java.lang.NoClassDefFoundError 中的异常:junit/textui/ResultPrinter。

我认为错误是因为它找不到 junit.jar 文件。 当我按照下面的 junit 设置进行操作时,它不能修复错误:

http://www.tutorialspoint.com/junit/junit_environment_setup.htm

我无法使上述设置正常工作。它仍然找不到junit类。 任何想法如何解决问题。

【问题讨论】:

  • 你设置系统变量了吗?不适用于用户设置变量
  • 这可能会回答你的问题:stackoverflow.com/questions/19516289/…
  • @IntegralOfTan 这不会导致解决方案。
  • @ImAtWar 是 Windows 7 中的系统变量。更改了类路径。应该可以工作,但不能,但没关系 Android 测试用例只需要在 Android Studio 中工作,目前还不行。

标签: android junit android-studio


【解决方案1】:

Martin,您是否将测试类放在文件夹结构中的正确位置?

查看http://tools.android.com/tech-docs/unit-testing-support“Flavors and build types support”下的表格

它为我解决了这个问题,但我不得不手动移动测试类(并创建文件夹) - 而 Android Studio 可以为您自动生成测试套件(转到...测试 , 右键单击​​类标题后),默认情况下不提供将其放在正确的位置,因此可能会造成混淆。

还要确保在 Build Variants 选项卡中将 Test Artifact 设置为 "Unit Tests",但官方教程更明确地说明了这一点我想这不是你忽略的。

我知道你的问题已经过时了,但也许有人偶然发现它,就像我自己只是在为这个问题苦苦挣扎一样;) 伙计们,记住 - StackOverflow 上投票率最高的答案告诉你坚持 Android 测试并放弃 JUnit 是现在已经过时了,Android Studio 支持直接在您的 PC 上运行的 JUnit 测试,正如我在上面发布的链接中所解释的那样。当然,它们不会让您访问工具 - 我使用它们来测试我的“纯”Java 逻辑,它与平台无关。

【讨论】:

    猜你喜欢
    • 2015-01-28
    • 2013-10-31
    • 2015-03-09
    • 2011-03-22
    • 1970-01-01
    • 2015-05-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多