1. 程式人生 > >Andriod測試錯誤 Exception in thread "main" java.lang.NoClassDefFoundError: junit/textui/ResultPrinter 解決

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 按鈕,如圖:


執行測試成功,沒有報錯.

這特別說明: 不要在方法上 右鍵,執行,這樣還會報之前的錯誤,這個需要注意。