簡體   English   中英

當我嘗試在Android模擬器上運行Junit測試用例時,為什么會發生此錯誤?

[英]Why does this error occur when I try to run a Junit test-case on the Android emulator?

按照Diego Torres博客上的一些說明進行操作后,我可以使用常規的Eclipse JUnit測試運行程序來測試我的類,但是我還希望能夠在模擬的android環境中運行我的單元測試。

現在,這應該沒有什么實質性的區別,因為我正在處理的類執行非常基本的數字或網絡任務,但是顯然,涉及UI或Android API特定功能的任何內容都只能在模擬器上進行測試。

我使用android.test.InstrumentationTestRunner設置了類型為AndroidJUnitTest的新運行配置,但是每當啟動測試時,控制台中都會出現以下錯誤:

[2010-01-09 00:45:23 - Pal1]Uploading Pal1.apk onto device 'emulator-5556'
[2010-01-09 00:45:23 - Pal1]Installing Pal1.apk...
[2010-01-09 00:45:25 - Pal1]Success!
[2010-01-09 00:45:25 - Pal1]Launching instrumentation android.test.InstrumentationTestRunner on device emulator-5556
[2010-01-09 00:45:27 - Pal1]Test run failed: Unable to instantiate instrumentation ComponentInfo{org.stodge.traderpal/android.test.InstrumentationTestRunner}: java.lang.ClassNotFoundException: android.test.InstrumentationTestRunner in loader dalvik.system.PathClassLoader@43598c28

如您所料,測試結束(在最后的“無法實例化儀器ComponentInfo”消息之后,實際上沒有運行任何測試。

現在,我的測試用例僅包含Junit3和Junit4鍋爐代碼。 測試的實現只包含fail()調用。 在此階段,我要做的就是表明我可以在兩種環境中執行基本的單元測試,從而可以開始測試驅動的開發。

注意:-在Ubuntu 64位上運行Eclipse 3.5-仿真器設置為API級別2-我是Android和Java的新手,所以請問我的基本問題

我會忽略那個博客所說的; 似乎已經過時了。

您不需要導入JUnit庫或類似的東西; 適當的類TestCase等已集成到Android SDK中。

只需在您的項目中創建一個新類並擴展AndroidTestCase 然后,您可以右鍵單擊要運行的測試用例(或測試用例包),然后選擇“運行方式”→“ Android JUnit測試”。

另外,我將使用高於2的API級別。 實際上,沒有使用的設備運行的是Android 1.1; 您可以安全地切換到API級別3(Android 1.5),這是對以前版本的重大改進。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM