2013-03-25 5 views
7

में विलय करने के लिए वैसे भी है मै मैक्सोक्स प्लेटफ़ॉर्म में कवरेज परीक्षण के लिए gcov का उपयोग कर रहा हूं। मैं सेट द्वारा xcode के लिए विन्यास खत्म:क्या दो gcov फ़ाइलों को एक

1. Build Settings ==> Generate Test Coverage Files == Yes 
2. Build Settings ==> Instrument Progaram Flow == Yes 
3. Build Phases ==> Link Binary with library ==> add "libprofile_rt.dylib" 

तब फ़ाइलें "Test.d, Test.dia, Test.gcno, Test.gcda, Test.o" तब मैं gcov-4.2 -b Test.gcno आदेश का उपयोग Test.m.gcov फ़ाइल उत्पन्न करने के लिए उत्पन्न (यह मैं क्या चाहते है), लेकिन अगली बार जब मैं परीक्षण मामलों चलाने दोबारा, फाइलें "Test.d, Test.dia, Test.gcno, Test.gcda, Test.o" फिर से उत्पन्न की जाएंगी, और डेटा रीसेट हो जाएगा।

तो मैं दो प्रश्न हैं:

  1. वहाँ है मुझे इतना है कि मैं अपने इस परियोजना की तो कई बार चलाने के लिए और फिर अंत में फ़ाइलों को उत्पन्न कर सकते हैं इन कवरेज संचित फाइलों में डेटा बनाने के लिए किसी भी तरह से।
  2. यदि # 1 निराशाजनक है, तो क्या आप मुझे बता सकते हैं कि merge two Test.gcno फ़ाइलों (दो बार चलने से उत्पन्न) कैसे करें। मैं टर्मिनल में gcov कोशिश, नीचे gcov आदेश के लिए विकल्प हैं:

    gcov-4.2 -help 
    Usage: gcov [OPTION]... SOURCEFILE 
    
    Print code coverage information. 
    
        -h, --help      Print this help, then exit 
        -v, --version     Print version number, then exit 
        -a, --all-blocks    Show information for every basic block 
        -b, --branch-probabilities  Include branch probabilities in output 
        -c, --branch-counts    Given counts of branches taken 
                rather than percentages 
        -n, --no-output     Do not create an output file 
        -l, --long-file-names   Use long output file names for included 
                source files 
        -f, --function-summaries  Output summaries for each function 
        -o, --object-directory DIR|FILE Search for object files in DIR or called FILE 
        -p, --preserve-paths   Preserve all pathname components 
        -u, --unconditional-branches Show unconditional branch counts too 
    
    For bug reporting instructions, please see: 
    <URL:http://developer.apple.com/bugreporter>. 
    

अग्रिम में अपने सभी मदद के लिए धन्यवाद

उत्तर

15

gcov के लिए हमेशा की तरह कार्यप्रवाह

  1. है संकलित करें और लिंक कवरेज समर्थन के साथ (-fprofile-arcs -ftest-coverage)
  2. अपने निष्पादन योग्य, संभावित रूप से कई बार, संभवतः विभिन्न पैरामीटर/सेट के साथ चलाएं सी चीज़ें। यह .gcda फ़ाइलों
  3. आह्वान gcov में संचयी उपयोग की जानकारी बनाने के एक मानव पठनीय प्रारूप (.gcov)

तो बुनियादी तौर पर, आवेदन के लगातार रन संचित कवरेज आंकड़ों का परिणाम देगा में कवरेज आंकड़े प्राप्त कर सकते हो जाएगा। यह सिर्फ यह है कि ये संग्रह .gcda फ़ाइलों में होंगे, न कि .gcov फाइलें, इसलिए आपको अपडेट किए गए आंकड़े देखने के लिए प्रत्येक बार gcov फिर से चलाने होंगे।

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