गो इंटीग्रेशन टेस्ट में टेस्ट कवरेज का निर्धारण
एकीकरण परीक्षणों का उद्देश्य संपूर्ण सिस्टम की कार्यक्षमता का मूल्यांकन करना है, अक्सर मॉकिंग या नियंत्रण द्वारा बाहरी निर्भरता. हालाँकि, एकीकरण परीक्षणों के परीक्षण कवरेज का निर्धारण अद्वितीय चुनौतियों का सामना करता है।
गैर-पैकेज परीक्षणों में कवरेज को मापना
वर्णित परिदृश्य में, परीक्षण पैकेज से अलग होते हैं वे परीक्षण करते हैं. नतीजतन, गो टेस्ट-कवर कमांड 0% कवरेज की रिपोर्ट करता है। इसे संबोधित करने के लिए, कोई -coverpkg निर्देश का उपयोग कर सकता है। पैकेज, भले ही परीक्षण बाहरी हों। यह पैकेज पथ को अपने तर्क के रूप में लेता है। ..
यह दृष्टिकोण एकीकरण परीक्षणों में पैकेज कवरेज के लक्षित विश्लेषण की अनुमति देता है।
उदाहरण कवरेज आउटपुटएक उदाहरण पर विचार करें जहां एपीआई पैकेज में main_test.go में परीक्षण शामिल हैं। अधिकांश व्यावसायिक तर्क mypackage पैकेज में रहते हैं। -कवरपीकेजी के साथ कमांड निष्पादित करने से कवरेज का अधिक सटीक प्रतिनिधित्व मिलता है:
$ go test -cover -coverpkg mypackage ./src/api/...
यह आउटपुट दिखाता है कि परीक्षण mypackage पैकेज में 50.8% स्टेटमेंट्स को कवर करते हैं। इसके विपरीत, -coverpkg का उपयोग किए बिना, कवरेज 71.0% अधिक दिखाई देगा, जो निर्दिष्ट पैकेज के बाहर परीक्षणों के कारण है।
अतिरिक्त विचार
यह सार्थक है यह देखते हुए कि मॉकिंग की जटिलता और सिस्टम-वाइड परीक्षण की प्रकृति के कारण एकीकरण परीक्षण आम तौर पर यूनिट परीक्षणों की तुलना में कम कोड को कवर करते हैं। हालाँकि, ऊपर उल्लिखित दृष्टिकोण विशेष रूप से प्रासंगिक पैकेजों के लिए एकीकरण परीक्षणों की वास्तविक कवरेज को मापने का एक तरीका प्रदान करता है।
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3