2016-01-05 5 views
8

मुझे एक स्विफ्ट फ़ंक्शन मिला है जिसके लिए एक्सकोड कोड कवरेज में 0 पास दिखा रहा है। रेखा एक बंद ब्रेस है (नीचे लाल रंग में हाइलाइट)।एक बंद ब्रेस क्यों कोई कोड कवरेज दिखा रहा है?

क्या यह एक्सकोड में एक बग है? यदि नहीं, तो उस पंक्ति को चलाने के लिए मुझे किस स्थिति को हिट करने की आवश्यकता है? मैंने सोचा कि मैं इस विधि के माध्यम से सभी पथों को कवर कर रहा था।

Code with un-covered line

+0

कभी भी इस एक्सकोड मुद्दे को चुप करने का कोई तरीका पता है? –

+0

@AdamJohns मैंने हाल ही में ऐसा नहीं देखा है - लेकिन मैं थोड़ी देर में इस कोड पर काम नहीं कर रहा हूं। आप अभी भी इसे एक्सकोड 8 के साथ देख रहे हैं? – Dov

उत्तर

0

xcode रिपोर्ट न खत्म होने वाली कोष्ठक, जो आम तौर पर वांछित नहीं है के लिए माप शामिल हैं। इसे ठीक करने के लिए कॉन्फ़िगरेशन में कुछ भी नहीं है (जहां तक ​​मुझे पता है)।

(एफडी मैं कोडेकोव पर काम करता हूं) आप एक होस्टेड समाधान Codecov का उपयोग कर सकते हैं, जो इन अतिरिक्त लाइनों को स्वचालित रूप से हटा देगा। https://github.com/codecov/example-xcode पर और जानें। धन्यवाद :)

+3

लेकिन फिर यह हर जगह क्यों नहीं हो रहा है? मेरे अधिकांश वर्ग और कार्यों को 100% – Dov

+2

पर कवर किया गया है उत्कृष्ट प्रश्न, दुर्भाग्यवश मेरे पास कोई जवाब नहीं है। –

+0

मैं इसके बारे में भी curios हूँ। – JerryZhou

0

बहुत यकीन है कि यह एक्सकोड कोड कवरेज का एक बग (फीचर?) है। यह मुद्दा रिटर्न स्टेटमेंट पर उबालता है जो इसे खाली अन्य कथन में गिरने की इजाजत नहीं देता है, इस प्रकार यह इंगित करता है कि कोड निष्पादित नहीं किया गया है। रिटर्न स्टेटमेंट कोड की लाइनों की गिनती करने के लिए जो कुछ भी कर रहे हैं, उसमें एक रिंच फेंक देते हैं।

आपके प्रयास/पकड़ ब्लॉक के उदाहरण में, खाली खाली निष्पादन को रोकने के लिए आपके पास वास्तव में बहुत अधिक विकल्प नहीं है।

एक प्रयोग के रूप में, वापसी विवरण हटाएं और writeToURL कथन को पकड़ने के लिए एक बेहतर तरीका ढूंढें ताकि यह त्रुटि/पकड़ विवरण में निष्पादित न हो। इससे आपको उस लाइन के लिए क्लीन कोड कवरेज मिल जाएगा।

संबंधित मुद्दे