मेरे पास मेरे ऐप में कुछ विधियां हैं जो http अनुरोध करते हैं। यूनिट परीक्षणों के लिए नेटवर्क विफलताओं और खराब प्रतिक्रियाओं को अनुकरण करने का कोई अच्छा तरीका है?HTTP अनुरोधों को बनाने वाले परीक्षण विधियां
उत्तर
उपयुक्त Mock Objects आप इस तरह के सिमुलेशन आसानी से प्रदर्शन देना चाहिए अपने वायरलेस राउटर बंद कर देते हैं; यदि आप अवधारणा से अपरिचित हैं, तो यहां एक अच्छा tutorial है।
नेटवर्क विफलताओं के लिए पहले आपके कंप्यूटर ईथरनेट केबल (या डी/सी वायरलेस) को अनप्लग करने से पहले कुछ भी धड़कता नहीं है और फिर जो भी केबल आपको क्लाउड तक पहुंच प्रदान करता है उसे अनप्लग करना।
यदि खराब प्रतिक्रियाओं से आप HTTP त्रुटियों का मतलब है तो आप एएसपी स्क्रिप्ट लिख सकते हैं जो हमेशा विशिष्ट त्रुटियों को फेंक देगा। यदि आप विकृत HTTP पैकेट का परीक्षण करना चाहते हैं तो आपको ऐसा करने के लिए एक सरल सॉकेट ऐप लिखना होगा।
यह सुनिश्चित नहीं है कि आप अपने स्वचालित बिल्ड सिस्टम में केबल अनप्लगिंग प्रक्रिया को कैसे एकीकृत करते हैं ;-) – assylias
अपने लैन तार बाहर खींच, या जब अनुरोध किए जा रहे हैं :)
हम इस स्थिति में क्या करते हैं वह कॉल है जो कॉल कर रही है। अपने तर्क को सीधे http अनुरोध करने के बजाय, अपना कोड एक फ़ंक्शन कॉल करें। भीतर कि समारोह की तरह कुछ हो सकता है:
if (in_test) {
response = get_test_response();
} else {
response = make_http_request();
}
तो फिर आप अपने इकाई परीक्षण कुछ get_test_response() फ़ंक्शन द्वारा पहुँचा जा सकता मान सेट कर सकते हैं। इस तरह आप प्रोग्रामिक रूप से बदल सकते हैं कि उस कॉल का नतीजा क्या होगा।
यह आमतौर पर आपके आवेदन में उस तरह के तर्क के लिए खराब रूप है। मैं एक नकली वस्तु का उपयोग करने की सिफारिश करेंगे। – codecraig
लाइब्रेरी को लपेटें जो इंटरफ़ेस के पीछे HTTP कॉल (उदा। Java.net.URL कनेक्शन या कॉमन्स एचटीपी क्लाइंट) बनाता है, और उसके बाद उस इंटरफ़ेस के कार्यान्वयन या मैक्स लिखें जो विफलता स्थितियों को अनुकरण करता है।
आपका इंटरफ़ेस केवल HTTP क्लाइंट कार्यक्षमता की पूरी श्रृंखला के बजाय आपके एप्लिकेशन को करने के लिए आवश्यक संचालन का प्रतिनिधित्व कर सकता है।
शायद Spring test mocks कुछ सहायता का होगा।
- 1. HTTP अनुरोधों को सुनें
- 2. HTTP प्रतिक्रियाओं के HTTP अनुरोधों को मैपिंग
- 3. HTTP विधियां: हटाएं बनाम पोस्ट
- 4. Nginx HTTP अनुरोधों को कैसे संभालता है?
- 5. सीएसएस http अनुरोधों को कैसे कम करें?
- 6. HTTP अनुरोधों को स्नीफ करने वाले आईफोन ऐप्स को कैसे दिखाया जाए?
- 7. HTTP अनुरोधों में उपयोगकर्ता-एजेंट, रूबी
- 8. एएसपी.नेट एमवीसी 4 सभी आने वाले अनुरोधों को रोकता है
- 9. क्या अनुप्रयोग_स्टार्ट सभी आने वाले अनुरोधों को अवरुद्ध करता है
- 10. यूनिट परीक्षण कुछ वेब सेवा विधियां
- 11. HTTP अनुरूपता परीक्षण सुइट
- 12. परीक्षण देखने वाले मददगार
- 13. प्रतिलिपि बनाने वाले प्रतिलिपि उदाहरण
- 14. Node.js: एक्सप्रेस में सभी HTTP अनुरोधों पर कुछ कैसे करें?
- 15. आईआईएस के तहत एक HTTP हैंडलर के साथ लंबे समय से चलने वाले अनुरोधों को कैसे संसाधित करें?
- 16. डी का उपयोग करके, मैं इनकमिंग HTTP अनुरोधों को कैसे सुनूंगा और उन्हें जवाब दूंगा?
- 17. जेबबर अनुरोधों को डिक्रिप्ट करने
- 18. PHP हैंडल HTTP अनुरोधों को देने के लिए अपाचे को कॉन्फ़िगर कैसे करें?
- 19. मल्टी-स्टेप डेटाबेस लेनदेन कई HTTP अनुरोधों में विभाजित
- 20. रेल में HTTP GET अनुरोधों के साथ सीएसआरएफ संरक्षण
- 21. वेब अनुरोधों के लिए http अनुरोध, लेकिन सर्वर
- 22. नई पैकेज निर्भरताओं को जोड़ने वाले फीचर अनुरोधों को कैसे संभालें
- 23. HTTP अनुरोधों में विभिन्न टीसीपी कनेक्शन कैसे पहचाने जाते हैं?
- 24. http अनुरोधों में "& rnd =" पैरामीटर का उद्देश्य क्या है?
- 25. सभी अनुरोधों के लिए HTTP बेसिक प्रमाणीकरण सेट अप
- 26. जावा कॉलबैक विधियां
- 27. HTTP अनुरोधों को सत्यापित करने और Global.asax में विशिष्ट HTTP प्रतिक्रियाओं को वापस करने का एक उचित तरीका क्या है?
- 28. घोंसला वाले कार्यों पर चलने वाले यूनिट परीक्षण
- 29. क्या अन्य अनुरोधों से 3 जी के माध्यम से किए गए HTTP अनुरोधों को अलग करना संभव है
- 30. मैं परिभाषित करके जीएनयू बनाने वाले मैक्रो को कैसे बनाऊं?
+1 इसे मॉक करें, खींचने वाले तारों के साथ गड़बड़ न करें। –
ट्यूटोरियल लिंक की समय सीमा समाप्त हो गई है। – tokhi