मैं एक परिणामसेट का नकल करना चाहता हूं। गंभीरता से। मैं कोड का एक बड़ा जटिल टुकड़ा दोबारा कर रहा हूं जो परिणामसेट से डेटा पार्स कर रहा है, और मैं चाहता हूं कि मेरा कोड समान व्यवहार करे। इसलिए, मुझे परीक्षण करने में सक्षम होने के लिए रिफैक्टर किए जाने वाले टुकड़े के लिए एक यूनिट टेस्ट लिखना होगा।डेटा के साथ परिणामसेट भरने का आसान तरीका
googling के बाद मैं 2 विचारों के साथ आया था:
- उपयोग EasyMock, मजाक अनुक्रम looooong लिखें। बहुत खराब समाधान: प्रारंभिक डेटा जोड़ने, डेटा बदलने के लिए मुश्किल, बड़े परीक्षण डीबगिंग संकेतों को जोड़ना मुश्किल है।
- मेमोरी डीबी बनाने के लिए अपाचे डर्बी या एचएसक्यूएलडीबी का उपयोग करें, इसे फ़ाइल या स्ट्रिंग सरणी से भरें, कुछ जादुई InMemoryDBUtils.query (SQL) के साथ क्वेरी करें। फिर उस परिणामसेट का उपयोग करें। दुर्भाग्यवश, मुझे टेस्ट फास्ट लिखने के लिए कोई जादुई InMemoryDBUtil नहीं मिला :-)। आईबीएम लेख "डर्बी के साथ दृढ़ता से पृथक इकाई परीक्षण" मुझे लगता है कि मुझे क्या चाहिए, हालांकि ...
दूसरा दृष्टिकोण कुछ हद तक आसान और अधिक सहायक लगता है।
ऐसी नकली बनाने के लिए आप क्या सलाह देंगे? (डॉक्टरों के बावजूद ,-)? क्या मुझे
एक भौं
कुछ रजत बुलेट गायब है? संभवतः, डीबीयूनीट इसके लिए उपकरण है?
हैलो यिशई, प्रतिक्रिया के लिए धन्यवाद। 10 क्षेत्रों में से प्रत्येक के रिकॉर्ड के साथ, मैं 10 या अधिक परीक्षणों में से प्रत्येक के लिए लगभग 100 रिकॉर्ड मजाक करूँगा। यह, AFAIU, मुझे डेटा और कस्टम परिणामसेट कार्यान्वयन में डेटा स्टोर करने के लिए डीबीयूनीट के साथ छोड़ देता है। उत्तर देने के लिए फिर से धन्यवाद। – DiaWorD
आपका स्वागत है। मैं कहूंगा कि यदि 10 परीक्षणों में से प्रत्येक को अलग-अलग डेटा की आवश्यकता होती है, तो हाँ, यह एक उचित दृष्टिकोण होगा। डीबीयूनीट के साथ आप एक परिणामसेट ले सकते हैं और इसे एक्सएमएल में लिख सकते हैं, इसलिए आप केवल परीक्षण में संदर्भित करते हैं। – Yishai