2011-12-02 30 views
5

मैं JUnit परीक्षण मामलों के साथ एक जावा परियोजना के लिए कोड/शाखा कवरेज की गणना करने के Cobertura उपयोग कर रहा हूँ की सिफारिश की। मुझे पता है कि 100% कवरेज यह नहीं बताता कि कोड कितना अच्छा है, लेकिन फिलहाल यह 6% है। शाखा कवरेज 1% है। मेरा अंतर्ज्ञान कहता है कि इस परियोजना की निर्णय लेने की प्रकृति के कारण शाखा कवरेज शायद अधिक महत्वपूर्ण है। चूंकि यह मेरी एकमात्र बड़ी परियोजना है, इस समय मुझे कोड/शाखा कवरेज के उद्देश्य के लिए उचित मूल्यों में कोई अनुभव नहीं है।कोड कवरेज/शाखा कवरेज मूल्यों

मेरा मानना ​​है कि इस एप्लिकेशन में शाखा कवरेज बहुत महत्वपूर्ण है, इसलिए मैंने आवश्यक मूल्य 100% निर्धारित किया है। मैंने कोड कवरेज थ्रेसहोल्ड को 80% तक परिभाषित किया है।

इन मूल्यों के लिए कोड जटिलता क्या कारक है?

मैं शायद संख्या पर बहुत अधिक बल हूँ, लेकिन मैं अन्य लोगों से अनुभव के बारे में सुनना चाहते हैं। मुझे पता है कि ये मान प्रोजेक्ट प्रकृति पर निर्भर हैं, लेकिन क्या कुछ सामान्य पॉइंटर्स/आलेख/व्यक्तिगत अनुभव हैं जिन्हें मैं संदर्भित कर सकता हूं?

उत्तर

5

जब मैं शाखा कवरेज के मैनुअल कार्यात्मक परीक्षण के लिए इस्तेमाल किया परीक्षण द्वारा उत्पादित मापा मैं

मिला ~ 65% इसके अलावा में लाइन कवरेज के What is a reasonable code coverage % for unit tests (and why)?

5

मैं अन्य लोगों से अनुभव के बारे में सुनना चाहता हूं।

मैंने कई हजारों लाइन कोड के साथ एक लाइब्रेरी लिखी, और एक कवरेज सूट जो लाइब्रेरी से भी अधिक था। 99.98% पर, मैंने एक को छोड़कर हर एक पंक्ति को कवर किया: यह विधि एक विरासत परियोजना से आई थी, और मुझे नहीं पता था कि उस लाइन को मारने वाले टेस्ट केस का निर्माण कैसे किया जाए। जब मेरी लाइब्रेरी उत्पादन में आई, तो पहली बग रिपोर्ट उस एकल अनचाहे रेखा के कारण हुई थी।

उस परियोजना से मेरा ले-होम सबक यह था कि जिन रेखाओं को आप नहीं जानते हैं उन्हें हिट करना सबसे खतरनाक है। यदि आपकी परियोजना निर्णय-केंद्रित है, तो यह 100% कवरेज प्राप्त करने के लिए आपकी सबसे अच्छी रुचि है।

+0

भी 100% देखो एक बग मुक्त सॉफ्टवेयर गारंटी नहीं दे सकते। शाखा कवरेज का 100% भी गारंटी नहीं दे सकता है। – CuongHuyTo

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