2011-12-01 11 views
19

ऐसा लगता है कि रोबोटियम को पूरे आवेदन के बजाय एक समय में 1 गतिविधि का परीक्षण करने के तरीके में डिजाइन किया गया था।एंड्रॉइड और रोबोटियम - परीक्षण गतिविधि जो अतिरिक्त की अपेक्षा करती है?

तो मेरे सवाल का कैसे मैं एक गतिविधि है कि एक अतिरिक्त यह करने के लिए पारित किया जा करने की उम्मीद है परीक्षण करते है? अतिरिक्त द्वारा मेरा मतलब है intent.putExtra("Something", object);

उत्तर

25

विधि setActivityIntent (आशय) होना चाहिए कि आप क्या देख रहे हैं। मैंने अपनी गतिविधि के टेस्टकेस को कस्टम इरादा प्रदान करने के लिए इस विधि का उपयोग किया। अपने कन्स्ट्रक्टर में सुपर पर कॉल करने के बाद बस इसका उपयोग करें।

Intent i = new Intent(); 
i.putExtra("myExtra", "anyValue"); 
setActivityIntent(i); 

आप निर्माता मुझे लगता है कि में यह करने के लिए नहीं है, लेकिन आप इससे पहले कि आप पहली बार के लिए getActivity() फोन यकीन है कि तुम यह फोन करने की जरूरत है। गतिविधि प्राप्त करने के लिए सक्रियता आपके इरादे का उपयोग करेगी।

+0

धन्यवाद मुझे कुछ समय बचाया इस पता लगाना! – JPM

+1

असल में रोबोटियम के आखिरी संस्करण में हमें एक्टिविटी() में एक्टिविटी() सेट() में सेट करना चाहिए() – imort

4

आप getActivity रद्द कर सकते थे() के बजाय।

@Override 
public NewActivity getActivity() { 
    Intent intent = new Intent(); 
    intent.putExtra("exampleExtra", "some data"); 
    setActivityIntent(intent); 
    return super.getActivity(); 
} 

अधिक जानकारी के लिए Testing for Android with Robotium देखें।

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