में नकली कैसे करें/मुझे पता है कि बीडीडी बनाने में डैन नॉर्थ के इरादे में से एक को शब्दावली को परीक्षण डोमेन की जटिलता से दूर ले जाना था। हालांकि, बाहरी दृष्टिकोण को लागू करने में, ऐसा लगता है कि हमें अभी भी मजाकिया व्यवहार (या अगर आप पसंद करते हैं) की कुछ समझ की आवश्यकता है। उत्तर this video में सुझाव देता है कि यदि मैं बाहरी डोमेन ऑब्जेक्ट्स से शुरू करता हूं और अपना रास्ता अंदरूनी तरीके से काम करता हूं, तो मैं सहयोगियों को नकल करता हूं क्योंकि मैं उन्हें खोजता हूं और बाद में उन्हें उचित कार्यान्वयन के साथ बदल देता हूं। तो अंत में, मैं एंड-टू-एंड परीक्षणों के सेट के साथ समाप्त होता हूं।बीडीडी
मार्टिन Fowler this blog post में यह देखने के लिए लग रहा था थोड़ा अलग तरह से जब वह TDD के दो शिविरों में परिभाषित किया गया: "शास्त्रीय TDD" जो असली वस्तुओं जहां संभव का उपयोग करता है और एक नकली जब आवश्यक है, और "mockist TDD" जो ज्यादातर स्थितियों में mocks पसंद । उन्होंने बीडीडी को उत्तरार्द्ध की ओर झुकाव के रूप में देखा। आईई, कि एक सुविधा के विकास के अंत में, "नकली" दृष्टिकोण वास्तविक परीक्षणों में मोक्स छोड़ देगा (बीडीडी चर्चा में उस शब्द का उपयोग करने के लिए खेद है)।
निष्पक्षता में, दोनों सामग्रियां साल पुरानी हैं, और शायद चीजें स्पष्ट हो गईं क्योंकि बीडीडी इकाई स्तर और स्वीकृति स्तर पर लागू होने के बीच लाइन के साथ विकसित हुआ।
लेकिन समुदाय के लिए मेरा प्रश्न मूल रूप से है: जब मेरी कहानी पूरी हो जाती है, तो मेरे परिदृश्य वास्तव में कितने अंत तक परीक्षण होना चाहिए? उत्तर explains कि बीडीडी को अवशोषण की आवश्यकता है। उदाहरण के लिए, जब मैं लॉगिन व्यवहार का परीक्षण कर रहा हूं, तो मेरे परिदृश्य विस्तार से बताएंगे कि लॉगिन प्रक्रिया का क्या अर्थ है। हालांकि, जब मैं कुछ अन्य परिदृश्य कर रहा हूं कि की आवश्यकता है लेकिन लॉगिन नहीं है, तो मैं उन चरणों को और अधिक नहीं करना चाहता हूं। मैं एक आसान अमूर्तता चाहता हूं जो बस कहता है "मुझे लॉग इन किया गया है," इसलिए मैं अपने अन्य व्यवहार को निष्पादित कर सकता हूं।
तो ऐसा लगता है कि अमूर्तता के लिए मेरा दृष्टिकोण होगा कि मैं कुछ सहयोगियों (या "परीक्षण डबल" प्रदान करता हूं), और कुछ परिदृश्य दूसरों के मुकाबले अधिक उपयोग कर सकते हैं। उदाहरण के लिए, क्या मैं हमेशा बाहरी संसाधनों, जैसे कि डीबी या मेल सर्वर का नकल करता हूं?
शायद मैं गलत सवाल पूछ रहा हूं। बीडीडी संचार के बारे में है, प्रतिक्रिया चक्र को छोटा करता है, और यह पता लगाने के लिए कि आप क्या नहीं जानते हैं। हो सकता है कि क्या-और-क्या-टू-मॉक एक अप्रासंगिक प्रश्न है, जब तक कि वास्तव में जिस व्यवहार में हम रुचि रखते हैं वह वास्तव में काम करता है। मैं उत्सुक हूं कि यहां दूसरों के दृष्टिकोण क्या हैं।