我正在尝试测试我的项目,并且我有以下错误:
Exception in thread "main" java.lang.NoClassDefFoundError: junit/textui/ResultPrinter
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:264)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:122)
Caused by: java.lang.ClassNotFoundException: junit.textui.ResultPrinter
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
我试着安装JUnit,就像在这里中提到的那样(没有6-7个步骤,我不明白)和这里。但仍然有同样的问题。
在挖掘异常时,我发现一些文件正在使用库libcore,而这个库是找不到的(显示cannot resolve symbol 'libcore'
)。库dalvik.system.VMStack
(显示cannot resolve symbol 'VMStack'
)也是如此。
发布于 2015-06-26 01:43:27
我也遇到过同样的问题,这是我在Android中设置的结果。本质上是Android的默认设置(或者可能是我在某个时候设置的?)是用Java JUnit而不是Android JUnit运行我的测试。
若要检查此问题,请转到顶部栏并查找"Run“下拉列表,然后尝试单击”编辑配置“。您应该会看到"Run/Debug配置“窗口弹出。
在最左边的窗格中,应该只有"Android应用程序“、"Android测试”和“默认”部分。如果有任何文件位于"JUnit“文件夹中,而不是"Android”文件夹中,那么您的测试可能无法正常运行。要修复它,选择左上角的加号并选择"Android测试“。此操作允许您创建一个新的运行配置,作为一个Android测试。在顶部输入更改运行配置的文件/文件的任何重要信息。例如,如果"TestDB“最初位于"JUnit”之下,则进行新的,选择" class“单选按钮,并在新的文本栏中找到适当的类。您也可以使用“所有在应用程序”或“全部在包”为您的整个测试集创建设置。
选择"JUnit“下的所有内容并单击顶部的减号按钮以删除这些运行配置是非常重要的。同样重要的是:如果您有机会选择run配置(即右键单击一个文件/包,按"run“并显示多个运行选项),请确保始终选择带有Android符号的配置!
发布于 2015-06-21 20:57:00
看来您忘了导入结果打印机了。
import junit.textui.ResultPrinter
发布于 2015-06-24 09:59:34
我用Android解决了这个问题。我遵循了http://tools.android.com/tech-docs/unit-testing-support中的说明。确保您重命名/src//.测试源代码位于/src/test/.在AS中使用“重命名重构”选项。
最后包括用于“方法.而不是模拟的”的片段。如果遇到错误,请出错。
https://stackoverflow.com/questions/30969204
复制相似问题