2012-10-16 34 views
1

我試圖運行Android庫的JUnit測試。所以我在Eclipse中創建了一個新的Android應用程序項目,但沒有任何活動。然後我改變了AndroidManifest.xml中,以便它使用「android.test.InstrumentationTestRunner」的儀器,並且還增加了getResourceName()返回錯誤的名稱

<uses-library android:name="android.test.runner" /> 

接下來,我將自己的Android庫在項目屬性的庫引用。

我的問題是我想使用測試項目中的資源來驅動庫上的測試。例如,我在測試項目的res/raw文件夾中添加了一個「hello_world」文本文件。

這個資源現在顯示了在R.raw.hello_world

的問題是,當我叫context.getResources()。getResourceName(R.raw.hello_world)這是返回錯誤的名稱。這是我試圖測試的庫中資源的名稱。

當測試運行時,似乎我的測試項目中的資源缺失。

回答

1

問題在於使用了錯誤的上下文。

我正在使用AndroidTestCase類和getContext()方法,但該上下文不包含與測試一起打包的資源。因此,將該類更改爲InstrumentationTestCase並使用getInstrumentation()。getContext()解決了該問題。

相關問題