चंचल विकास परिनियोजन प्रक्रिया। क्यूए और बिजनेस ओनर्स टेस्ट कहाँ करते हैं?


9

मैं हाल ही में एसवीएन या जीआईटी का उपयोग करके विभिन्न वेब एप्लिकेशन परिनियोजन प्रक्रियाओं पर हाल ही में पढ़ रहा हूं, यह देखने के लिए कि हम वर्तमान में जहां मैं काम करता हूं, वहां कैसे तैनात किया जाए।

जैसा कि एजाइल के कई स्वादों के साथ है, यह माना जाता है कि मास्टर या ट्रंक के लिए प्रतिबद्ध कुछ भी तैयार है। GitHub और Etsy, http://codeascraft.etsy.com/2010/05/20/quantum-of-deployment/ दोनों का कहना है कि वे इस आधार पर काम करते हैं (हालाँकि एट्सी का वास्तव में मंचन का माहौल है)।

यह प्रक्रिया सभी इकाई परीक्षण मानती है और सीआई परीक्षण चलाए गए हैं। आप स्थानीय स्तर पर और CI पर परीक्षण चलाते हैं और फिर ट्रंक के लिए प्रतिबद्ध होते हैं। SO, इस बिंदु पर आपका कोड तकनीकी रूप से ध्वनि है।

आपका कोड तकनीकी रूप से सही हो सकता है, लेकिन उपयोगकर्ता / कार्यात्मक परीक्षण अधिक बग का पता लगा सकता है, खासकर जब यह फ्रंट एंड टेस्टिंग की बात आती है।

मेरा सवाल यह है। QA और व्यवसाय स्वामी आपके द्वारा लागू किए गए फ़ीचर परिवर्तनों का परीक्षण कहाँ करते हैं? ट्रंक करने के लिए या QA / स्टेजिंग मशीन पर जाने से पहले अपने स्थानीय विकास मशीन पर?

यदि आपके पास एक स्टेजिंग मशीन है जो ट्रंक से चलती है, और आप मानते हैं कि ट्रंक के लिए प्रतिबद्ध सभी कोड तैयार है ... एह .. तो किस बिंदु पर कोड को हस्ताक्षरित किया गया है और तकनीकी और व्यवसाय दोनों से उत्पादन में जाने के लिए अच्छा है। परिप्रेक्ष्य? यदि आपके पास केवल एक स्टेजिंग मशीन है, तो कई डेवलपर्स और यही वह जगह है जहां कोड QA'd होना है, तो आप ट्रंक से कैसे तैनाती कर सकते हैं क्योंकि कई डेवलपर परिवर्तन साइन ऑफ के लिए इंतजार कर सकते हैं।

मुझे यह सुनने में दिलचस्पी होगी कि दूसरों ने यह कैसे संपर्क किया है?

जवाबों:


6

बेहतर या बदतर के लिए, मैं आमतौर पर ऐसा किया जाता है जहां परीक्षण शाखा आधार के खिलाफ किया जाता है और व्यापार साइन ऑफ होता है, चेकपॉइंट को मुख्य में विलय करने के लिए है।

मैंने इसे "मुख्य" पर विकास के साथ एक "तैनात" शाखा के रूप में एक अलग "तैनात" शाखा के रूप में देखा है।

वर्कफ़्लो समाप्त होता है कुछ इस तरह से देख:

  • कोड कुछ
  • स्थानीय परीक्षण चलाएं
  • कार्यशील शाखा की जाँच करें
  • (वैकल्पिक) बिल्ड सर्वर चींटी परीक्षण बनाता है
  • क्यूए / व्यापार परीक्षण
  • बगफिक्स (लूप बैक टू टॉप)
  • मर्ज करने के लिए तैनाती शाखा
  • तैनाती

कुछ लोग एक ही शाखा से काम करते हैं, लेकिन अगर आप मैन्युअल परीक्षण करने जा रहे हैं जो कठिन हो जाता है। अधिकांश लोगों ने मुझे यह महसूस किया है कि इस धारणा पर काम करते हैं कि कुछ भी इस तरह से तैनात किया जा सकता है कि एक ट्रंक से बाहर काम भी कुछ छोटा कर रहे हैं, या स्वचालित परीक्षण की एक बड़ी राशि है, या वे इस वार्तालाप में "तैनात" मानते हैं परीक्षण सर्वर के लिए एक निर्माण हो और क्यूए की प्रक्रिया जो परीक्षण सर्वर और उत्पादन के बीच होती है, अलग से नियंत्रित की जाती है।


धन्यवाद विधेयक। हम एक ऐसे वातावरण में काम करते हैं जहां डेवलपर्स साइट के लिए कार्यक्षमता के अलग-अलग टुकड़े लगातार कर रहे हैं और तैनात कर रहे हैं। यदि सुविधा शाखा में काम कर रहे हैं, तो कार्यशील शाखा में जाँच करने के बाद, आप QA / Business परीक्षण कहाँ देख रहे हैं? यदि आपके पास सिर्फ एक क्यूए मशीन है जो डेवलपर्स को शाखाएं देते हैं, तो वास्तविक रूप से केवल एक ही सुविधा का परीक्षण एक समय में किया जा सकता है, जब तक कि आपके पास संभवतः क्यूए मशीन पर प्रत्येक डेवलपर के लिए सेट अप साइट और अलग-अलग इंस्टेंस न हों, इसलिए उसकी ट्रंक को करने से पहले अलगाव में परिवर्तनों का परीक्षण किया जा सकता है।
बाज़ा

इसके साथ मेरे अनुभव में आमतौर पर हम प्रत्येक देव के लिए एक अलग सुविधा शाखा नहीं बनाते थे, प्रत्येक टीम के लिए एक से अधिक और हमने उनमें से प्रत्येक के लिए एक क्यूए होस्ट स्थापित किया था, भले ही वह सिर्फ एक अतिरिक्त देव मशीन हो।
बिल

टिप्पणियों की सराहना करें। मुझे कुछ विचार दिए हैं।
बाज़ा

2

हमारे पास समान सुविधा शाखा पर स्वचालित स्वीकृति परीक्षण हैं। जब आप एक रिलीज़ प्रत्याशी बनाते हैं, तो इसमें वह स्वचालित परीक्षण शामिल होता है जिसे आप यह देखने के लिए चलाते थे कि क्या सुविधा पास हो गई है। आप जारी उम्मीदवार का भी परीक्षण करें। जब सब कुछ गुजर जाता है, तो आप इसे बढ़ावा देते हैं फिर मास्टर में विलय करके।

इस प्रक्रिया पर यहाँ और अधिक:

https://plus.google.com/109096274754593704906/posts/R4qkeyRadLR

टिप्पणियों को भी चेकआउट करें।

उम्मीद है की यह मदद करेगा,

एडम


@ एडडम - इसके लिए धन्यवाद, और लिंक। वहां की चर्चा दिलचस्प थी। सोच के लिए भोजन।
बाज़ा

0

एक सामान्य नियम के रूप में, कोड सही होने से पहले प्रतिबद्ध होने की प्रतीक्षा में संस्करण नियंत्रण प्रणाली के फायदे वापस लेने में आधा समय लगता है। (बहुत विस्तार के बिना, मैं यह कहूंगा कि जब तक किसी को वीसीएस के लिए कई चेक-इन की अनुमति नहीं है, तब तक मेरे पास अपना खुद का काम करने का कोई तरीका नहीं है!) इसलिए एक अभ्यास के रूप में हम हमेशा लोगों को एसवीएन के लिए अपनी शाखा के भीतर चेक-इन रखने के लिए कहते हैं। या यह जीआईटी के मामले में स्थानीय कमिट हो सकता है) जितना वे चाहते हैं। वास्तव में और अधिक बेहतर है।

हालांकि, जब जहां सब कुछ बिंदु आता है प्रतीत होता है किया है और परीक्षण किया जाना है - हम इसे एक रिलीज फोन और उसके बाद यह ट्रंक के साथ मिला दिया गया है। अनिवार्य रूप से, QA HEADशाखा पर नए सिरे से जांच करके आरसी को प्रमाणित कर सकता है और यदि वह ओके के पास है, तो उसे ट्रंक के साथ वापस मर्ज कर दिया जाता है।

इसलिए अनिवार्य रूप से हम कार्य-शाखाओं या निजी-शाखाओं की अवधारणा का उपयोग करते हैं ताकि लोग अपनी ज़रूरत के अनुसार चेक-इन करने के लिए स्वतंत्र हों। इसी समय, ट्रंक किसी भी टूटी हुई चेक-इन से अपेक्षाकृत मुक्त है ।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.