Chromium Chronicle #18: Chromium कोड कवरेज

एपिसोड 18: वीनिता जोशी और प्रखर अस्थना की Mountain View, CA (फ़रवरी 2021)
पिछले एपिसोड

टेस्ट कवरेज से यह पता चलता है कि किसी सोर्स कोड को कितने सोर्स कोड से चलाया जा रहा है टेस्ट सुइट रन करता है. कवरेज डेटा जनरेट करने के तीन मुख्य चरण हैं: कंपाइल करना इंस्ट्रुमेंटेशन के साथ-साथ, इंस्ट्रुमेंट वाले टेस्ट चलाने से डेटा इकट्ठा करना और डेटा की पोस्ट-प्रोसेसिंग होती है. कवरेज टीम के पास इस प्रोसेस को ऑटोमेट करने के लिए टूल हैं.

कवरेज स्क्रिप्ट सिर्फ़ एक निर्देश में कोड कवरेज रिपोर्ट जनरेट कर सकती है, बिना इंतज़ार किए, Gerrit UI के अपडेट होने का इंतज़ार नहीं करना पड़ेगा. फ़िलहाल, यह स्क्रिप्ट Linux, Mac, iOS, और ChromeOS पर काम करती है.

यहां एक उदाहरण दिया गया है:

$ gn gen out/coverage \
    --args='use_clang_coverage=true is_component_build=false'
$ python tools/code_coverage/coverage.py \
    crypto_unittests url_unittests \
    -b out/coverage -o out/report \
    -c 'out/coverage/crypto_unittests' \
    -c 'out/coverage/url_unittests --gtest_filter=URLParser.PathURL' \
    -f url/ -f crypto/

यह crypto_unittests और url_unittests targets को बनाता और चलाता है. इसके लिए url_unittests, यह सिर्फ़ URLParser.PathURL टेस्ट करता है. कवरेज रिपोर्ट को url/ से सिर्फ़ फ़ाइलें और सब-डायरेक्ट्री शामिल करने के लिए फ़िल्टर किया गया है और crypto/. प्रोसेस को ऑटोमेट करने के अलावा, यह स्क्रिप्ट अतिरिक्त सुविधाएं पाएं. इनका इस्तेमाल करके, डायरेक्ट्री और कॉम्पोनेंट के हिसाब से कोड का कवरेज देखा जा सकता है.

कवरेज स्क्रिप्ट से मिले आउटपुट का स्क्रीनशॉट. अभी तक किसी भी व्यक्ति ने चेक इन नहीं किया है डायरेक्ट्री व्यू
कवरेज स्क्रिप्ट से मिले आउटपुट का स्क्रीनशॉट. अभी तक किसी भी व्यक्ति ने चेक इन नहीं किया है कॉम्पोनेंट व्यू

कोड कवरेज टूल की मदद से, डायरेक्ट्री के हिसाब से कोड कवरेज का ब्रेकडाउन उपलब्ध होता है पूरे कोड बेस के लिए, Windows, iOS, Android, Linux और ChromeOS.

अपनी राय दें: code-coverage @ chromium.org से संपर्क करें या इस गड़बड़ी की शिकायत करें crbug.com पर.

संसाधन