2015-06-05 43 views
2

我使用過Android Studio AI-141.1972460使用JUnit 4,我試圖寫一個活動的簡單JUnit測試返回null null,所以我在那裏得到一個NullPointerException。ActivityUnitTestCase.getInstrumentation Android Studio中

我嘗試使用ActivityInstrumentationTestCase2而不是這種方法,但getActivity在這種情況下也同樣返回null。

我認爲這與嘲弄有關?我有

testOptions { 
    unitTests.returnDefaultValues = true 
} 

在我的build.gradle文件以及

testCompile 'org.mockito:mockito-core:1.9.5' 

我需要模擬出一個應用程序對象或類似的東西?

感謝您的幫助。

+0

在同樣的問題和最奇怪的部分是儀表是一個junit類! –

回答

0

看起來我試圖按照「JUnit測試」(根據http://tools.android.com/tech-docs/unit-testing-support的說明)運行我的測試,而不是「Android測試」。

當我將其設置爲「Android Instrumentation Test」(不同之處在於Build Variants中的Test Artifact設置)時,此工作正常。

作爲「JUnit測試」,我能夠解決此問題並使用Robolectric設置我的活動對象。

+0

那麼這是否意味着您從Build變體中選擇了「Android Instrumentation Test」來運行junit測試? –

+1

對不起,應該說「Android Instrumentation測試」,而不是「Android測試」。一旦我這樣做,測試代碼運行良好,但需要在AVD中運行。 – BogusDonut

+0

感謝您的確認,請修改帖子並更正。 –