6

Android プロジェクトでは、単純な junit テストを実行しようとしています。彼らは常に失敗します:

java.lang.RuntimeException: Stub!
at org.apache.http.impl.client.AbstractHttpClient.<init>(AbstractHttpClient.java:5)
at org.apache.http.impl.client.DefaultHttpClient.<init>(DefaultHttpClient.java:7)
at com.my.android.JsonParser.getJSONFromUrl(JsonParser.java:27)
at com.my.android.test.JsonParser_Test.getJson(JsonParser_Test.java:19)

これは失敗する行です。新しいクラスの開始はそれを行います。

 public JSONObject getJSONFromUrl(String url) {
        DefaultHttpClient httpClient = new DefaultHttpClient();
        ...
 }

junitいくつかの投稿で、.jar の前に jar を含める必要があることがわかりましたAndroid SDK。でそれをしましたがIntelliJ、役に立ちませんでした。私は使用junit 4.9していますAndroid SDK 4.2.2

4

1 に答える 1

0

Robolectric はあなたに役立つと思います。

Android エミュレーターまたはデバイスでのテストの実行が遅い! 多くの場合、アプリのビルド、デプロイ、起動には 1 分以上かかります。それはTDDを行う方法ではありません。もっと良い方法があるはずです。

Android テストを IDE 内から直接実行できたら便利だと思いませんか? おそらく、あなたは試してみましたが、恐ろしい「java.lang.RuntimeException: Stub!」によって妨げられましたか?

http://pivotal.github.com/robolectric/

于 2013-04-05T08:02:23.953 に答える