मेरे पास एक प्रोजेक्ट है जिसमें मैं इकाई परीक्षण और टीडीडी प्रथाओं को सीखने की कोशिश कर रहा हूं। मुझे लगता है कि मुझे काफी उलझन में आने वाले मामलों में मिल रहा है, जहां मैं एक उपयोगिता वर्ग के लिए लंबे समय तक मोज़े लगा रहा हूं जिसका व्यावहारिक रूप से हर जगह उपयोग किया जाता है।क्या टीडीडी में मजाक करने के बजाए 'वास्तविक' उपयोगिता वर्ग का उपयोग करना स्वीकार्य है?
जो मैंने यूनिट परीक्षण के बारे में पढ़ा है, यदि मैं MyClass का परीक्षण कर रहा हूं, तो मुझे किसी भी अन्य कार्यक्षमता (जैसे UtilityClass द्वारा प्रदान किया गया) का मज़ाक उड़ाया जाना चाहिए। क्या यह स्वीकार्य है (यह मानते हुए कि यूटिलिटी क्लास के पास परीक्षणों का एक व्यापक सेट है) केवल सभी अलग-अलग परीक्षण मामलों के लिए मैक्स स्थापित करने के बजाय उपयोगिता क्लास का उपयोग करने के लिए?
संपादित करें: उन चीजों में से एक जिसके लिए मैं बहुत सेटअप कर रहा हूं। मैं विभिन्न स्थानों में विभिन्न वस्तुओं के साथ एक नक्शा मॉडलिंग कर रहा हूं। मेरे उपयोगिता वर्ग पर सामान्य तरीकों में से एक GetDistance के बीच है। मैं उन तरीकों का परीक्षण कर रहा हूं जिनके प्रभाव उनके व्यक्तिगत गुणों के आधार पर चीजों पर प्रभाव डालते हैं, उदाहरण के लिए एक परीक्षण जो किसी बिंदु की 5 इकाइयों और 3 वर्ष से अधिक उम्र के भीतर सभी वस्तुओं का चयन करता है, को कई परीक्षणों की आवश्यकता होगी (पुरानी वस्तुओं को सीमा में प्राप्त किया जाता है, पुरानी वस्तुओं को अनदेखा करता है सीमा के अनुसार, श्रेणी में युवा वस्तुओं को अनदेखा करता है, प्रत्येक मामले के गुणकों के साथ सही ढंग से काम करता है) और उन सभी परीक्षणों को 'GetDistanceBetween' विधि के सेटअप की आवश्यकता होती है। GetDistanceBetween (लगभग हर एक) का उपयोग करने वाली प्रत्येक विधि से गुणा करें और अलग-अलग परिस्थितियों में विधि को वापस आने वाले विभिन्न परिणाम, और यह बहुत सेटअप हो जाता है।
मैं देख सकता हूं क्योंकि मैं इसे और विकसित करता हूं, वहां अधिक उपयोगिता वर्ग कॉल, बड़ी संख्या में ऑब्जेक्ट्स और उन नकली उपयोगिता कक्षाओं पर बहुत सारे सेटअप हो सकते हैं।
+1 "परीक्षण को सरल बनाएं" पर जोर देने के लिए +1 –