मैं इकाई परीक्षण और टीडीडी के लिए 'अपेक्षाकृत नया' हूं। हाल ही में मैंने अपना पहला उत्पादन एप्लिकेशन पूरा कर लिया है जिसमें कम से कम सिद्धांत (100% कोड कवरेज) है। मैंने पिछली परियोजनाओं में कुछ समय के लिए यूनिट-परीक्षण किया है, लेकिन वास्तविक टीडीडी फैशन में नहीं और अच्छे कोड कवरेज के साथ। यह हमेशा एक विचार के बाद किया गया था। मुझे लगता है कि अब मुझे इस पर बहुत अच्छी समझ है।टीडीडी के लिए आवश्यक बुनियादी ढांचा?
मैं टीडीडी और यूनिट परीक्षण पर बाकी टीम को प्रशिक्षित करने की भी कोशिश कर रहा हूं ताकि हम टॉगरथ विकसित कर सकें और हमारे सभी अनुप्रयोगों में यूनिट परीक्षण करने के साथ आगे बढ़ना शुरू कर सकें, और अंततः पूर्ण टीडीडी डब्ल्यू/स्वचालित & निरंतर एकीकरण बनाता है। & आलोचनाओं के लिए हमले/प्रशिक्षण एजेंडा की मेरी योजना के संबंध में मैंने a thread here पोस्ट किया।
उत्तर (वास्तव में उच्चतम मतदान) में से एक मैं पहली बार सेटअप बुनियादी ढांचे का सुझाव दिया इससे पहले कि मैं प्रशिक्षण के साथ आगे जाने। दुर्भाग्य से मैं इस के लिए कोई जोखिम है, और विषयों पर googling क्योंकि CruiseControl.NET/Nant/आदि के लिए पृष्ठों वास्तव में व्याख्या नहीं करते मुश्किल है 'क्यों' हम इस सेट करना चाहिए और 'कैसे' सब कुछ togeather जोड़ता है।
हम एक छोटी सी दुकान (लगभग 10 डेवलपर्स) कर रहे हैं और लगभग विशेष रूप से माइक्रोसॉफ्ट प्रौद्योगिकियों का उपयोग और VB.NET में हमारे विकास करते हैं। हम अंततः सी # का उपयोग करना शुरू कर रहे हैं लेकिन यह एक और समय के लिए है। मैं एमएसटीएस्ट प्रोजेक्ट का उपयोग कर रहा हूं जो मेरे यूनिट परीक्षणों के लिए वीएस -2008 के साथ आता है, और मैं विजुअल स्टूडियो का उपयोग करके अपने ऐप्स बना रहा हूं, और एमएसआई सेटअप परियोजनाओं का उपयोग करके तैनाती कर रहा हूं ... हम भी (दुर्भाग्य से) हमारे सूअर नियंत्रण के लिए वीएसएस का उपयोग करते हैं - लेकिन यह चॉपिंग ब्लॉक पर भी है और मैं वास्तव में इसे से छुटकारा पाने और उपversण का उपयोग करना चाहता हूं।
मुझे पता है कि मैं सीआई के लिए CruiseControl.NET उपयोग करने की आवश्यकता है, और या तो Nant या MSBuild अनुप्रयोगों के निर्माण के लिए। और मुझे इन सभी बिल्डों को चलाने के लिए शायद एक बिल्ड सर्वर की आवश्यकता है। लेकिन मुझे बस कुछ भी नहीं मिल रहा है जो बिंदुओं को 'जोड़ता है' और बताता है कि वे एक दूसरे के साथ कैसे बातचीत करते हैं, आपके बिल्ड सर्वर पर क्या होना चाहिए, जब आपको अपने बिल्ड सर्वर के साथ बनाना चाहिए (क्या यह केवल तैनाती के निर्माण के लिए है, या यहां तक कि जब आप बस अपने स्थानीय माहौल पर एक छोटा बदलाव करने के बाद विकसित ऐप को संकलित करना चाहते हैं?)। मैं एमएसटीएस्ट को कुचलने की भी योजना बना रहा हूं क्योंकि मुझे यह छोटी गाड़ी मिल गई है और इसके बजाय nnnit का उपयोग करेगा।
किसी को भी शायद 'उचित बुनियादी ढांचे की स्थापना तो पूरी टीम यह कर सकते हैं और togeather काम' इस अंतर मैं 'जानने कैसे TDD करने के लिए' के लिए से है उजागर कर सकते हैं? मैं समझता हूं कि निरंतर एकीकरण क्या है, लेकिन फिर से, मुझे यकीन नहीं है कि एक बिल्ड सर्वर कैसे स्थापित किया जाना चाहिए और यह सब कुछ के साथ कैसे जुड़ता है, और हमें एक की आवश्यकता क्यों है (उदाहरण के लिए प्रबंधन के लिए पिच)। आपके समय के लिए बहुत बहुत
धन्यवाद।
मुझे अंतिम निर्माता के किस हिस्से की आवश्यकता है? ऐसा लगता है कि अंतिम निर्माता और टीमसिटी के साथ कुछ ओवरलैप है। फ़ाइनबिल्डर सर्वर एक सीआई सर्वर प्रतीत होता है, इसलिए मुझे लगता है कि मुझे इसकी आवश्यकता नहीं है। फाइनलबिल्डर एक बिल्ड सर्वर प्रतीत होता है - लेकिन मैंने सोचा कि टीमसिटी भी एक बिल्ड सर्वर है ... और ऑटोमोज़ एक विजुअल विंडोज ऑटोमेशन टूल प्रतीत होता है, जैसे Winforms ऐप्स के लिए किसी प्रकार का विकास मंच ...
_I भी The Team City Supported Apps Diagram में अंतिम निर्माता के लिए समर्थन न देखें: _
मुझे लगता है कि निम्न लिंक में इस विषय पर जानकारी का काफी संपूर्ण सेट शामिल है: http://martinfowler.com/articles/continuousIntegration.html – Tomas