यह कमांड ggcov-webdb है जिसे हमारे कई मुफ्त ऑनलाइन वर्कस्टेशन जैसे कि उबंटू ऑनलाइन, फेडोरा ऑनलाइन, विंडोज ऑनलाइन एमुलेटर या मैक ओएस ऑनलाइन एमुलेटर का उपयोग करके ऑनवर्क्स फ्री होस्टिंग प्रदाता में चलाया जा सकता है।
कार्यक्रम:
नाम
ggcov-webdb - ggcov वेब इंटरफ़ेस के लिए मध्यवर्ती डेटाबेस तैयार करें
SYNOPSIS
ggcov-webdb [[-r] डायरेक्टरी|पट्टिका]...
वर्णन
जीजीकोव-वेबडीबी एक विकास से एक मध्यवर्ती डेटाबेस और स्रोत फ़ाइलों का पेड़ उत्पन्न करता है
निर्देशिका, टारबॉल के रूप में। इस टारबॉल की फ़ाइलें बाद में उपयोग की जाती हैं
जीजीसीओवी WWW ब्राउज़रों को परीक्षण कवरेज डेटा प्रस्तुत करने के लिए PHP पृष्ठ।
परीक्षण कवरेज डेटा C और C++ प्रोग्राम द्वारा संकलित किया जाता है जीसीसी -फ्रोफाइल-आर्क्स
-फटेस्ट-कवरेज. तो का संयोजन ggcov-webdb और जीजीसीओवी PHP पेज मूल रूप से एक है
के लिए WWW प्रतिस्थापन जीसीओवी प्रोग्राम जो के साथ आता है जीसीसी.
मध्यवर्ती डेटाबेस दृष्टिकोण का उपयोग सामान्य मामले को संभालने के लिए किया जाता है जहां विकास होता है
मशीन और वेब सर्वर मशीन अलग-अलग हैं। डेटाबेस में कवरेज डेटा शामिल है
एक अनुक्रमित, प्लेटफ़ॉर्म-स्वतंत्र, PHP-अनुकूल फ़ॉर्म। क्योंकि डेटाबेस प्रारूप है
प्लेटफ़ॉर्म-स्वतंत्र PHP पृष्ठों को किसी भिन्न वेब सर्वर पर तैनात किया जा सकता है
विकास मशीनों के लिए वास्तुकला। वास्तव में जीजीसीओवी वेब पेज किसी भी वेब का समर्थन करते हैं
सर्वर जो निम्नलिखित मानदंडों को पूरा करता है:
· PHP संस्करण 4.3 या उसके बाद का समर्थन करता है, और
· प्रदान करता है dba के साथ विस्तार db4 प्रदाता (जो जीजीसीओवी को पढ़ने के लिए उपयोग करता है
मध्यवर्ती डेटाबेस), और
· प्रदान करता है gd विस्तार (जो जीजीसीओवी पर बारग्राफ उत्पन्न करने के लिए उपयोग करता है
सारांश पृष्ठ).
RSI sourceforge.net प्रोजेक्ट वेब सर्वर ऐसे सर्वर का एक उदाहरण है।
जीजीकोव-वेबडीबी मध्यवर्ती डेटाबेस युक्त एक gzipped टारबॉल उत्पन्न करता है और
डेटाबेस में उल्लिखित सभी स्रोत फ़ाइलों की प्रतियां। यही सब है
जानकारी है कि जीजीसीओवी वेब पेजों को एक बंडल में चाहिए, जिससे कॉपी करना सुविधाजनक हो
वेब सर्वर के लिए विकास मशीन। आमतौर पर इस टारबॉल को एक में निकाला जाएगा
की उपनिर्देशिका /var/ggcov/परीक्षण/ वेब सर्वर पर.
कवरेज डेटा फ़ाइलों को कैसे ढूंढें यह निर्दिष्ट करने के लिए तर्कों का उपयोग किया जाता है। तर्क दे सकते हैं
इनके संयोजन:
डायरेक्टरी
निर्देशिका को स्रोत फ़ाइलों के लिए स्कैन किया जाता है, जिन्हें इस तरह संभाला जाता है जैसे कि वे थे
कमांडलाइन पर निर्दिष्ट (सिवाय इसके कि लापता कवरेज डेटा फ़ाइलें चुपचाप हैं
अवहेलना करना)। अगर -r ध्वज प्रभाव में है, उप-निर्देशिकाओं को पुनरावर्ती रूप से स्कैन किया जाता है।
एकाधिक निर्देशिका निर्दिष्ट की जा सकती हैं और दिए गए क्रम में स्कैन की जाती हैं।
निष्पादन
निष्पादन योग्य फ़ाइल को डिबगिंग रिकॉर्ड के लिए स्कैन किया जाता है जिसमें स्रोत फ़ाइल होती है
नाम, और मौजूद प्रत्येक स्रोत फ़ाइल को इस तरह संभाला जाता है जैसे कि इसे निर्दिष्ट किया गया हो
कमांड लाइन (सिवाय इसके कि लापता कवरेज डेटा फ़ाइलों को चुपचाप अनदेखा कर दिया जाता है)।
कोई भी साझा पुस्तकालय जिस पर निष्पादन योग्य निर्भर करता है, उसे भी स्कैन किया जाता है। विभिन्न
निष्पादन योग्य निर्दिष्ट किए जा सकते हैं और दिए गए क्रम में स्कैन किए जाते हैं। यह सुविधा है
केवल कुछ प्लेटफॉर्म पर उपलब्ध है (उदाहरण के लिए, i386-linux)।
स्रोत दस्तावेज
क्या कोई नियमित फ़ाइल फ़ाइल एक्सटेंशन में से किसी एक में समाप्त हो रही है .c, . सीसी, .cxx, सीपीपीया,
.C. स्रोत फ़ाइलें उनकी संबंधित कवरेज डेटा फ़ाइलों से मेल खाती हैं (.gcno और
.gcda फ़ाइलें, या .bb, .बीबीजी, तथा .देता है पुराने कंपाइलर वाली फ़ाइलें) और ऑब्जेक्ट फ़ाइलें
पहले में एक ही बेसनाम और उपयुक्त एक्सटेंशन की फ़ाइल की खोज करना
स्रोत फ़ाइल के समान निर्देशिका और फिर निर्दिष्ट सभी निर्देशिकाओं में
कमांड लाइन (क्रम में उन्हें निर्दिष्ट किया गया था)।
विकल्प
-f test.tgz, --निर्गम संचिका=test.tgz
फ़ाइल नाम के लिए आउटपुट जनरेट करें test.tgz डिफ़ॉल्ट के बजाय ggcov.webdb.tgz।
विशेष फ़ाइल नाम - stdout पर आउटपुट उत्पन्न करने के लिए उपयोग किया जा सकता है।
-o दीर, --वस्तु-निर्देशिका=दीर
निर्देशिका जोड़ें दीर ऑब्जेक्ट फ़ाइलों और कवरेज डेटा फ़ाइलों के लिए खोज पथ पर।
-r, - आक्रामक
जब कमांड लाइन पर एक निर्देशिका निर्दिष्ट की जाती है, तो कवरेज डेटा फ़ाइलों की खोज करें
सभी बाल निर्देशिकाओं में पुनरावर्ती रूप से।
-X प्रतीकों, --दबाना-ifdef=प्रतीकों
आंकड़े या सारांश में शामिल न करें, सी प्री-प्रोसेसर निर्देशों के अंदर कोड
जो दिए गए में से किसी पर निर्भर करता है प्रतीकों. एक या अधिक प्रतीक दिए जा सकते हैं,
अल्पविराम या रिक्त स्थान द्वारा अलग किया गया। जीजीकोव-वेबडीबी के निम्नलिखित उपसमुच्चय को समझता है
C प्री-प्रोसेसर कमांड सेट:
· #अगर प्रतीक
· #अगर परिभाषित (प्रतीक)
· #ifdef प्रतीक
· #ifndef प्रतीक
· #else
· #endif
उदाहरण के लिए, -X डीबग दबा देंगे एफप्रिंटफ () इस कोड में कॉल करें:
अहस्ताक्षरित int
my_function (हस्ताक्षरित int x)
{
एक्स + = 42;
#ifdef डीबग
fprintf(stderr, "my_function: x=%u\n", x);
#endif
वापसी एक्स;
}
यह विकल्प टेस्ट इंफ्रास्ट्रक्चर कोड, डिबगिंग कोड, या को दबाने के लिए उपयोगी है
अन्य कोड जो कवरेज परीक्षण निष्पादन योग्य में संकलित है लेकिन जिसका कवरेज
महत्वपूर्ण नहीं है।
-Y शब्द, --दबाव-टिप्पणी=शब्द
आँकड़ों या सारांशों में शामिल न करें, कोड ऑन लाइन जिसमें a . भी शामिल है
एकल-पंक्ति टिप्पणी जिसमें दिए गए में से केवल एक शामिल है शब्द. एक या अधिक प्रतीक
दिया जा सकता है, अल्पविराम या व्हाइटस्पेस द्वारा अलग किया जा सकता है। उदाहरण के लिए, निर्दिष्ट करना -Y
मुझपर ध्यान मत दो दबा देंगे जोर देना () इस कोड में:
अहस्ताक्षरित int
my_function (हस्ताक्षरित int x)
{
एक्स + = 42;
जोर दें (एक्स> = 42); /* मुझपर ध्यान मत दो */
वापसी एक्स;
}
यह विकल्प टेस्ट इंफ्रास्ट्रक्चर कोड, डिबगिंग कोड, या को दबाने के लिए उपयोगी है
अन्य कोड जो कवरेज परीक्षण निष्पादन योग्य में संकलित है लेकिन जिसका कवरेज
महत्वपूर्ण नहीं है।
-Z स्टार्टवर्ड, एंडवर्ड,...
--दबाव-टिप्पणी-बीच=स्टार्टवर्ड, एंडवर्ड,...
आँकड़ों या सारांशों में शामिल न करें, उन कोडों के बीच लाइन पर कोड जिनमें a
एकल-पंक्ति टिप्पणी जिसमें केवल शामिल हैं प्रारंभ शब्द और अगली एकल-पंक्ति टिप्पणी
केवल शामिल हैं अंतिम शब्द. दो या दो से अधिक प्रतीकों को जोड़े में, द्वारा अलग किया जा सकता है
अल्पविराम या सफेद जगह। उदाहरण के लिए, -Z स्टार्टग्नोर, एंडीग्नोर दबा देंगे
इस कोड में संपूर्ण कार्य:
/* प्रारंभ करें */
अहस्ताक्षरित int
my_function (हस्ताक्षरित int x)
{
एक्स + = 42;
वापसी एक्स;
}
// एंडोग्नोर
यह विकल्प टेस्ट इंफ्रास्ट्रक्चर कोड, डिबगिंग कोड, या को दबाने के लिए उपयोगी है
अन्य कोड जो कवरेज परीक्षण निष्पादन योग्य में संकलित है लेकिन जिसका कवरेज
महत्वपूर्ण नहीं है।
उदाहरण
निष्पादन योग्य में सभी उपलब्ध स्रोतों के लिए मध्यवर्ती डेटाबेस तैयार करें ए.आउट (पर
केवल कुछ प्लेटफ़ॉर्म), और परीक्षण के रूप में स्थापित करें foo डिफ़ॉल्ट परीक्षण स्थान में.
mkdir /var/ggcov/tests/foo
ggcov-webdb -f - ए.आउट |
(सीडी /var/ggcov/tests/foo ; टार -xzf - )
वर्तमान निर्देशिका में सभी सी स्रोतों के लिए मध्यवर्ती डेटाबेस तैयार करें।
ggcov-webdb *।सी
एक निर्देशिका में सभी सी स्रोतों के लिए मध्यवर्ती डेटाबेस तैयार करें जहां ऑब्जेक्ट
फ़ाइलें और परीक्षण कवरेज डेटा फ़ाइलें अलग-अलग निर्देशिकाओं में हैं:
ggcov-webdb /फू/ओबीजे/ /foo/cov-डेटा/ /फू/src/
onworks.net सेवाओं का उपयोग करके ggcov-webdb का ऑनलाइन उपयोग करें