2013-04-05 5 views
6

एंड्रॉइड प्रोजेक्ट में मैं सरल जूनिट परीक्षण चलाने की कोशिश करता हूं। वे हमेशा असफल होते हैं:java.lang.RuntimeException: स्टब! एंड्रॉइड प्रोजेक्ट में जूनिट चल रहा है

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 जार Android SDK से पहले शामिल किया जाना चाहिए। मैंने IntelliJ में किया, लेकिन मैंने मदद नहीं की। मैं junit 4.9 और Android SDK 4.2.2

उत्तर

0

का उपयोग कर रहा हूं मुझे लगता है कि रोबोलेक्ट्रिक आपके लिए उपयोगी हो सकता है।

एंड्रॉइड एमुलेटर या डिवाइस पर चलने वाले परीक्षण धीमे हैं! ऐप का निर्माण, तैनाती और लॉन्च करने में अक्सर एक मिनट या अधिक समय लगता है। टीडीडी करने का कोई तरीका नहीं है। इसके लिए अवश्य ही एक बेहतर तरीका होना चाहिए। '

नहीं यह सीधे से के अंदर अपने आईडीई अपने Android परीक्षण चलाने के लिए अच्छा नहीं होगा? शायद आप की कोशिश की है, और खतरनाक द्वारा नाकाम कर दिया गया 'java.lang.RuntimeException: स्टब'?

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

+0

हाँ धन्यवाद मैं पहले से ही यह पर एक नज़र था। अच्छा लगता है। लेकिन इस मामले में पूरे एंड्रॉइड सामान शुरू किए बिना सरल जूनिट परीक्षण की आवश्यकता है। – Torsten

+0

हो सकता है कि आप एक सामान्य जावा परियोजना के रूप में परीक्षण चलाने, और DefaultHttpClient वर्ग के लिए अपाचे HttpComponents (http://hc.apache.org/) निर्भरता का उपयोग कर सकते हैं? –

संबंधित मुद्दे