The Chromium Chronicle #14: वॉटरफ़ॉल में जांच करने के तरीके

एपिसोड 14: MTV में ज़ाओयांग ली और TOK में एरिक एलेशर का गाना (अक्टूबर 2020)
पिछले एपिसोड

क्या आपको Chrome में अपनी नई सुविधा के लिए रिग्रेशन का पता लगाना है? अपने वॉटरफ़ॉल पर टेस्ट करता है (Chrome के लगातार बिल्ड और टेस्ट इन्फ़्रास्ट्रक्चर की जांच करता है)!

Chrome के वॉटरफ़ॉल पर ऐसे कई बिल्डर हैं जो अलग-अलग तरह के ऐप्लिकेशन की जांच करते हैं प्लैटफ़ॉर्म. इस लेख में, किसी मौजूदा टेस्ट सुइट में टेस्ट सुइट जोड़ने का तरीका बताया गया है बिल्डर. आगे बढ़ने से पहले, इन सवालों को ध्यान में रखें:

क्या नई जांच को बिलकुल नए सुइट में लाइव करना चाहिए या सिर्फ़ किसी मौजूदा सुइट में जोड़ना चाहिए?

  • सोर्स की जगह और थीम के आस-पास होने के हिसाब से, टेस्ट सुइट में टेस्ट व्यवस्थित किए जाते हैं. अगर आपके नए टेस्ट किसी मौजूदा सुइट में सही से फ़िट नहीं हो सकते, तो आपको शायद मुझे एक नया सुइट चाहिए.

क्या जांच किसी पब्लिक बिल्डर या इंटरनल बिल्डर पर की जानी चाहिए?

  • अगर कोड इंटरनल रिपो में मौजूद है, तो इंटरनल बिल्डर का इस्तेमाल करें या टेस्ट में गोपनीय डेटा शामिल होता है.

जांच, वित्तीय मामलों के सीआई या मुख्य सीआई (मुख्य सीआई) में की जानी चाहिए या कम क्यू (सीक्यू) में की जानी चाहिए?

  • FYI CI को आपकी निगरानी की ज़रूरत होती है. साथ ही, इसका इस्तेमाल टेस्ट रिफ़ाइनमेंट या प्रयोग करना.
  • मुख्य सीआई (CI) की जांच को नियमित तौर पर मॉनिटर करने वाले अधिकारी करते हैं.
  • फ़ेल होने पर CQ, CL सबमिशन को ब्लॉक करता है, लेकिन ज़्यादा इन्फ़्रा रिसॉर्स का इस्तेमाल करता है. नए सुइट को हमेशा CQ में प्रमोट किए जाने से पहले, CI से शुरू किया जाना चाहिए.
  • अगर आपको इस बारे में पक्के तौर पर नहीं पता है, तो अपने प्लैटफ़ॉर्म की EngProd टीम तय करने में आपकी मदद कर सकती है.

मेरे पास पहले से ही CI में एक टेस्ट सुइट चल रहा है. मैं इसे CQ में कैसे जोड़ूं? / क्या होगा अगर मैं क्या आपको नया बिल्डर चाहिए?

किसी मौजूदा बिल्डर में टेस्ट सुइट जोड़ने का तरीका

किसी मौजूदा बिल्डर में टेस्ट सुइट जोड़ने के लिए, आपको कुछ फ़ाइलें कॉन्फ़िगर करनी होंगी //src/testing/buildbot/ में:

  1. नए टेस्ट सुइट के लिए, gn_isolate_map.pyl में कुंजी बनाएं टारगेट लेबल और टाइप की जानकारी की जांच करें.
  2. test_suites.pyl में उस कुंजी को किसी टेस्ट ग्रुप में जोड़ें. (आपको बिल्डर पर टेस्ट ग्रुप से लेकर, बिल्डर के नाम तक मैपिंग मिल सकती है waterfalls.pyl.)

    'all_simulator_tests': {
      'previously_existing_test_suite': {},
      'exciting_new_feature_test_suite': {},
    },
    
  3. ज़्यादा फ़ाइन ट्यूनिंग.

    • mixins.pyl में ऐसे तर्क शामिल हैं जो अलग-अलग ग्रुप लेवल पर, टेस्ट के एक ग्रुप में लागू किया जा सकता है.
    • variants.pyl सुइट को कई मामलों में चलाने में मदद करता है और अलग-अलग आर्ग्युमेंट के साथ.
  4. चलाकर कॉन्फ़िगरेशन फ़ाइलें फिर से जनरेट करें generate_buildbot_json.py.

इनके बाद, अपने कॉन्फ़िगरेशन में हुए बदलावों की जांच करना आसान है; इस सुइट को चलाने वाले बिल्डर, नए टेस्ट को अपने-आप चुनेंगे और बिल्डर के लिए, वेब इंटरफ़ेस पर नतीजे मिलने शुरू हो जाएंगे वॉटरफ़ॉल - फ़ेल होने पर डीबग की कई जानकारी के साथ पूरा करें!