मैंने सिर्फ अपने GitHub रिपॉजिटरी पर शाखा सेटिंग्स बदल दीं, ताकि मेरी [अगली] शाखा को एक पुल अनुरोध के माध्यम से एक गुजरने वाले CI बिल्ड की आवश्यकता हो।
परीक्षण विफल होने के बारे में टीम के कई सदस्यों के साथ चर्चा हुई।
संदर्भ के लिए ...
रिपॉजिटरी की एक [मास्टर] शाखा है जो केवल तभी रिलीज़ होती है जब कोई रिलीज़ होती है, इसलिए [मास्टर] में अंतिम रिलीज़ के रूप में कोड होता है , भले ही यह एक प्रमुख, एक मामूली, एक हॉटफ़िक्स, एक बीटा, अल्फा / रिलीज से पहले निर्माण।
[अगली] शाखा "डिफ़ॉल्ट" एक है, जहां हम "रिलीज़-रेडी" कोड रखने का इरादा रखते हैं ; तकनीकी रूप से वह शाखा किसी भी समय [मास्टर] में जारी हो सकती है, और जारी की जा सकती है।
अलग-अलग कांटे की अपनी देव शाखाएँ हैं, और PR [अगला] में योगदानकर्ता हैं।
जब मैं एक गैर-तुच्छ पीआर की समीक्षा करता हूं, तो मैं योगदानकर्ता की देव शाखा को अपनी "समीक्षा" शाखा में विलीन कर दूंगा, और अगर मुझे ऐसी चीजें दिखाई दें, जिन्हें मैं जल्दी ठीक कर सकता हूं तो मैं बदलाव / पुश परिवर्तन और नए (कभी-कभी विफल) परीक्षण करूंगा, और पीआर योगदानकर्ता की देव शाखा में वापस; जब वे मेरे परिवर्तनों को मर्ज करते हैं, तो नए असफल परीक्षण पास करते हैं, और फिर धक्का देते हैं, उनका पीआर सिंक्रनाइज़ करता है, और फिर मैं पीआर को [अगले] में विलीन कर दूंगा।
लेकिन यह सवाल पासिंग टेस्ट के बारे में नहीं है , यह फेल होने वालों के बारे में है।
फेलिंग टेस्ट डॉक्यूमेंट जो तय होना चाहिए।
ज्ञात बग में परीक्षण के लिए लिखा होना चाहिए, ताकि हमें पता चले कि क्या काम नहीं कर रहा है।
तकनीकी तौर पर GitHub मुद्दों सूची (के लिए फ़िल्टर बग और / या महत्वपूर्ण लेबल ) वह भी करता है। क्या दस्तावेज़ों के बग में विफल परीक्षणों का एक गुच्छा भी एक अच्छा अभ्यास है ?
[अगला] पर एक असफल निर्माण का मतलब होगा कि हम रिलीज़-रेडी नहीं हैं ... लेकिन फिर "रिलीज़-रेडी" होना थोड़ा सा है जैसे "तैयार रहना" बच्चों को करना है - आप इसके लिए कभी भी तैयार नहीं हैं , और कुछ, कहीं (चर महत्व का) अनिवार्य रूप से रिलीज के साथ गलत हो जाएगा।
इसलिए हम केवल पासिंग टेस्ट को [अगले] पर धकेल रहे हैं। फ़ेल होने वाले परीक्षणों को कहाँ धकेलें? मेरा मतलब है, पीआर / समीक्षा प्रक्रिया के बाहर?
उदाहरण के लिए, एक उपयोगकर्ता मुद्दों की सूची में एक नया बग रिपोर्ट करता है, और मैं इसके लिए एक असफल परीक्षण सूट लिखना चाहता हूं - ताकि यह निर्दिष्ट करने के लिए कि क्या किया जाना चाहिए और कहां, जिससे नए योगदानकर्ताओं के लिए इसे चुनना आसान हो जाता है। और अंततः एक तय पीआर।
मुझे इन असफल परीक्षणों को कहां धकेलना चाहिए? या फिर कहीं भी फेल होने वाले परीक्षणों को आगे बढ़ाना भी एक अच्छा विचार है?