कवरेज
WebdriverIO का ब्राउज़र रनर istanbul
का उपयोग करके कोड कवरेज रिपोर्टिंग का समर्थन करता है। टेस्टरनर स्वचालित रूप से आपके कोड को इंस्ट्रूमेंट करेगा और आपके लिए कोड कवरेज कैप्चर करेगा।
सेटअप
कोड कवरेज रिपोर्टिंग को सक्षम करने के लिए, इसे WebdriverIO ब्राउज़र रनर कॉन्फ़िगरेशन के माध्यम से सक्षम करें, उदाहरण के लिए:
export const config = {
// ...
runner: ['browser', {
preset: process.env.WDIO_PRESET,
coverage: {
enabled: true
}
}],
// ...
}
सभी कवरेज विकल्पों की जांच करें, इसे उचित तरीके से कॉन्फ़िगर करने के तरीके जानने के लिए।
कोड को अनदेखा करना
आपके कोडबेस के कुछ हिस्से हो सकते हैं जिन्हें आप जानबूझकर कवरेज ट्रैकिंग से बाहर रखना चाहते हैं, ऐसा करने के लिए आप निम्नलिखित पार्सिंग हिंट्स का उपयोग कर सकते हैं:
/* istanbul ignore if */
: अगले if स्टेटमेंट को अनदेखा करें।/* istanbul ignore else */
: if स्टेटमेंट के else भाग को अनदेखा करें।/* istanbul ignore next */
: सोर्स-कोड में अगली चीज़ को अनदेखा करें (फंक्शन, if स्टेटमेंट, क्लासेस, आदि)।/* istanbul ignore file */
: पूरी सोर्स-फ़ाइल को अनदेखा करें (इसे फ़ाइल के शीर्ष पर रखा जाना चाहिए)।
यह अनुशंसित है कि आप अपनी टेस्ट फाइलों को कवरेज रिपोर्टिंग से बाहर रखें क्योंकि इससे त्रुटियां हो सकती हैं, जैसे कि execute
या executeAsync
कमांड्स को कॉल करते समय। यदि आप उन्हें अपनी रिपोर्ट में रखना चाहते हैं, तो सुनिश्चित करें कि आप उन्हें इंस्ट्रूमेंट करने से बाहर रखते हैं:
await browser.execute(/* istanbul ignore next */() => {
// ...
})