Andriod測試錯誤 Exception in thread "main" java.lang.NoClassDefFoundError: junit/textui/ResultPrinter 解決
Andriod Studio 執行測試報錯 Exception in thread "main" java.lang.NoClassDefFoundError: junit/textui/ResultPrinter 解決方法
在Android Studio 執行測試時報錯:
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)
... 3 more
解決方法:
1. 在Andriod Studio 選單欄: 點選 “Run” ---> "Edit Configurations..."
2. 開啟 Run/Debug 視窗
可以看到預設是 JUnit的測試,而這裡我們要用Android Test
將類名拷貝。
選中 Junit下邊的“SwiftMediaTest1.testName1”,點選 左上角的 “-”刪除,JUnit的配置會被刪除。
3. 點選 左上角的 “+”,在下拉列表 選擇 “Android Tests”
4. 根據自己的實際情況 修改如下:
應用並儲存。
5. 執行測試: 點選 頂部的 Run 按鈕,如圖:
執行測試成功,沒有報錯.
這特別說明: 不要在方法上 右鍵,執行,這樣還會報之前的錯誤,這個需要注意。