2008-09-01 12 views
5

क्या बहु-थ्रेडेड अनुप्रयोगों के कवरेज परीक्षण के लिए जीसीओवी का उपयोग करना संभव है?बहु-थ्रेडेड ऐप्स के लिए जीसीओवी

मैंने अपने कोड-बेस अप के कुछ मामूली परीक्षण सेट किए हैं, लेकिन यह सुनिश्चित करना अच्छा होगा कि हम जो कवरेज प्राप्त कर रहे हैं उसका कुछ विचार हो। यदि gcov उपयुक्त नहीं है, तो कोई भी वैकल्पिक टूल (संभव oprofile) की सिफारिश कर सकता है, आदर्श रूप से शुरू करने पर कुछ अच्छे दस्तावेज़ों के साथ।

उत्तर

8

हमने निश्चित रूप से हमारे बहु-थ्रेडेड एप्लिकेशन पर कवरेज जानकारी प्राप्त करने के लिए जीसीओवी का उपयोग किया है।

आप जीसीसी 4.3 के साथ संकलित करना चाहते हैं जो गतिशील कोड पर कवरेज कर सकता है।

आप -fprofile-arcs -ftest-coverage विकल्पों के साथ संकलित करते हैं, और कोड .gcda फ़ाइलों को उत्पन्न करेगा जो gcov प्रक्रिया कर सकते हैं।

हम अपने उत्पाद का एक अलग निर्माण करते हैं, और उस पर कवरेज एकत्र करते हैं, यूनिट परीक्षण और रिग्रेशन परीक्षण चलाते हैं।

अंत में हम HTML परिणाम पृष्ठों को उत्पन्न करने के लिए lcov का उपयोग करते हैं।

0

मैंने बहु-थ्रेडेड कवरेज काम के लिए gcov का उपयोग नहीं किया है। हालांकि, मैकोज़ पर ऐप्पल से शार्क टूल कई धागे को संभालता है। यह मुख्य रूप से एक प्रोफाइलर है, लेकिन कवरेज जानकारी भी कर सकता है।

http://developer.apple.com/tools/sharkoptimize.html

1

Gcov मल्टी-थ्रेडेड क्षुधा के लिए ठीक काम करता है। उपकरण वास्तुकला ठीक से क्रमबद्ध है ताकि आपको अच्छी निष्ठा का कवरेज डेटा मिल सके।

मैं lcov के साथ संयोजन में gcov का उपयोग करने का सुझाव दूंगा। यह आपको पूर्ण परियोजना से अलग स्रोत फ़ाइलों तक स्कॉप्ड की गई महान रिपोर्ट देगा।

एलसीओवी आपको अपने स्रोत का एक अच्छी तरह से रंग कोडित एचटीएमएल संस्करण भी देता है ताकि आप अपने कवरेज लापता का त्वरित मूल्यांकन कर सकें।

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