मैंने कई लेख पढ़े हैं, टीडीडी के बारे में कई स्क्रीनकास्ट देखे हैं, लेकिन मैं अभी भी असली दुनिया परियोजना में इसका उपयोग करने के लिए संघर्ष कर रहा हूं। मेरा मुख्य मुद्दा यह नहीं है कि मुझे नहीं पता कि कहां से शुरू करना है, पहला परीक्षण क्या होना चाहिए। मान लीजिए मुझे क्लाइंट लाइब्रेरी को बाहरी सिस्टम के तरीकों को कॉल करना है (उदा। अधिसूचना)। मैं इस ग्राहक काम करने के लिए इस प्रकारअसली दुनिया परियोजना में टीडीडी शुरुआती बिंदु कैसे चुनें?
NotificationClient client = new NotificationClient("abcd1234"); // client ID
Response code = client.notifyOnEvent(Event.LIMIT_REACHED, 100); // some params of call
पर्दे के पीछे कुछ अनुवाद और संदेश स्वरूप तैयारी नहीं है, इसलिए मैं अपने ग्राहक क्षुधा से छिपाना चाहते हैं।
मुझे नहीं पता कि कहां और कैसे शुरू किया जाए। क्या मुझे इस पुस्तकालय के लिए कुछ मोटे वर्ग सेट करना चाहिए? मैं
public void testClientSendInvalidEventCommand() {
NotificationClient client = new NotificationClient(...);
Response code = client.notifyOnEvent(Event.WRONG_EVENT);
assertEquals(1223, code.codeValue());
}
नीचे के रूप में परीक्षण NotificationClient साथ आरंभ करना चाहिए ताकि, इस तरह के परीक्षण के साथ मैं पूरा काम कर रहे कार्यान्वयन एक ही बार में लिखने के लिए, TDD राज्यों के रूप में कोई बच्चा चरणों के साथ मजबूर कर रहा हूँ है। मैं क्लाइंट में सोसमिंग कर सकता हूं लेकिन फिर मुझे इस बात को जानना होगा कि इसे आगे बढ़ाया जाए, इसलिए मुझे कुछ आगे की इच्छा बनाने की ज़रूरत है।
शायद मुझे नीचे से शुरू करना चाहिए, पहले इस संदेश स्वरूपण घटक का परीक्षण करें और फिर इसे सही क्लाइंट परीक्षण में उपयोग करें?
सही तरीका क्या है? क्या हमें हमेशा शीर्ष से शुरू करना चाहिए (इस विशाल चरण से निपटने के लिए कैसे आवश्यक है)? क्या हम वांछित फीचर (इस उदाहरण में फॉर्मेटर के रूप में) के छोटे हिस्से को महसूस करने वाले किसी वर्ग के साथ शुरू कर सकते हैं?
यदि मुझे पता चलेगा कि मेरे परीक्षणों के साथ कहां मारा जाए तो मेरे लिए आगे बढ़ना बहुत आसान होगा।
लेकिन उन वर्गों को इकाई परीक्षणों को लिखने के लिए कैसे और कहां से शुरू किया जाए? मुझे लगता है कि मुझे टीडीडी के लिए शुरुआती बिंदु चुनने में सक्षम होने के लिए कुछ कक्षाएं स्थापित करने की आवश्यकता है। लेकिन फिर यह बिंदु कहाँ होना चाहिए? क्या यह सिस्टम के किनारों पर होना चाहिए, या यह सिस्टम के बीच में हो सकता है - जैसे फॉर्मेटर का उल्लेख किया गया है? –
आप टीडीडी नीचे या ऊपर-नीचे कर सकते हैं। मैं नहीं देखता कि फ़ॉर्मेटर आपके उदाहरण में कैसे फिट बैठता है। एक परीक्षण को देखते हुए, आपको इसे प्राप्त करने के लिए आवश्यक न्यूनतम ** राशि ** लिखना चाहिए। –