هذا هو الأمر ggcov-webdb الذي يمكن تشغيله في موفر الاستضافة المجاني OnWorks باستخدام إحدى محطات العمل المجانية المتعددة عبر الإنترنت مثل Ubuntu Online أو Fedora Online أو محاكي Windows عبر الإنترنت أو محاكي MAC OS عبر الإنترنت
برنامج:
اسم
ggcov-webdb - إنشاء قاعدة بيانات وسيطة لواجهة الويب ggcov
موجز
ggcov-webdb [[-r] دليل|ملف] ...
الوصف
Ggcov-webdb ينشئ قاعدة بيانات وسيطة وشجرة الملفات المصدر من التطوير
الدليل، في شكل كرة القطران. يتم استخدام الملفات الموجودة في كرة القطران هذه لاحقًا بواسطة
com.ggcov صفحات PHP لتقديم بيانات تغطية الاختبار إلى متصفحات WWW.
يتم إنتاج بيانات تغطية الاختبار بواسطة برامج C وC++ المترجمة باستخدام دول مجلس التعاون الخليجي -fprofile- أقواس
-تغطية -ftest. لذلك الجمع بين ggcov-webdb و com.ggcov صفحات PHP هي في الأساس ملف
استبدال WWW لـ GCOV البرنامج الذي يأتي مع دول مجلس التعاون الخليجي.
يتم استخدام نهج قاعدة البيانات الوسيطة للتعامل مع الحالة الشائعة التي يتم فيها التطوير
الجهاز وجهاز خادم الويب منفصلان. تحتوي قاعدة البيانات على بيانات التغطية في
نموذج مفهرس ومستقل عن النظام الأساسي وصديق PHP. لأن تنسيق قاعدة البيانات هو
يمكن نشر صفحات PHP بشكل مستقل عن النظام الأساسي على خوادم ويب مختلفة
الهندسة المعمارية لآلات التطوير. في الواقع، فإن com.ggcov صفحات الويب تدعم أي شبكة
الخادم الذي يلبي المعايير التالية:
· يدعم PHP الإصدار 4.3 أو الأحدث
· يوفر ديسيبل التمديد مع db4 مقدم (الذي com.ggcov يستخدم لقراءة
قاعدة بيانات وسيطة)، و
· يوفر gd التمديد (الذي com.ggcov يستخدم لتوليد الرسوم البيانية على
صفحة الملخص).
تشير sourceforge.net يعد خادم ويب المشروع مثالاً على هذا الخادم.
Ggcov-webdb ينتج كرة قطران مضغوطة gzipped تحتوي على قاعدة البيانات الوسيطة نفسها و
نسخ من جميع الملفات المصدرية المذكورة في قاعدة البيانات. هذا هو كل
المعلومات التي com.ggcov تحتاج صفحات الويب إلى حزمة واحدة ملائمة للنسخ منها
آلة التطوير إلى خادم الويب. عادةً ما يتم استخراج كرة القطران هذه إلى ملف
دليل فرعي لـ /فار/ggcov/الاختبارات/ على خادم الويب.
يتم استخدام الوسيطات لتحديد كيفية البحث عن ملفات بيانات التغطية. يمكن للحجج
مجموعات من:
دليل
يتم فحص الدليل بحثًا عن ملفات المصدر ، والتي يتم التعامل معها كما لو كانت كذلك
المحدد في سطر الأوامر (باستثناء ملفات بيانات التغطية المفقودة بصمت
تم تجاهله). إذا كان -r العلم ساري المفعول ، يتم فحص الدلائل الفرعية بشكل متكرر.
يمكن تحديد أدلة متعددة ومسحها ضوئيًا بالترتيب المحدد.
تنفيذ
يتم فحص الملف القابل للتنفيذ من أجل تصحيح أخطاء السجلات التي تحتوي على ملف المصدر
أسماء ، ويتم التعامل مع كل ملف مصدر موجود كما لو تم تحديده في
سطر الأوامر (باستثناء أن ملفات بيانات التغطية المفقودة يتم تجاهلها بصمت).
يتم أيضًا فحص أي مكتبات مشتركة يعتمد عليها الملف التنفيذي. عديد
يمكن تحديد الملفات التنفيذية ومسحها ضوئيًا بالترتيب المحدد. هذه الميزة
متاح فقط في بعض الأنظمة الأساسية (على سبيل المثال ، i386-linux).
مصدر الملف
هو أي ملف عادي ينتهي بأحد امتدادات الملفات .c, . سم مكعب, .cxx, .CPP أو
.C. تتم مطابقة ملفات المصدر مع ملفات بيانات التغطية المقابلة لها (.gcno
.gcda الملفات أو .bb, .bbgو .DA الملفات ذات المجمعين الأقدم) وملفات الكائنات بواسطة
البحث عن ملف بنفس الاسم الأساسي والامتداد المناسب أولاً
نفس الدليل كملف المصدر ثم في جميع الدلائل المحددة في
سطر الأوامر (بالترتيب المحدد).
OPTIONS
-f test.tgz, --ملف إلاخراج=test.tgz
توليد الإخراج إلى اسم الملف test.tgz بدلا من الافتراضي ggcov.webdb.tgz.
اسم ملف خاص - يمكن استخدامها لتوليد الإخراج إلى stdout.
-o دير, - كائن- دليل=دير
أضف الدليل دير إلى مسار البحث عن ملفات الكائن وملفات بيانات التغطية.
-r, --العودية
عند تحديد دليل في سطر الأوامر ، ابحث عن ملفات بيانات التغطية
بشكل متكرر في جميع الدلائل الفرعية.
-X رموز, - دعم ifdef =رموز
لا تُدرج في الإحصائيات أو الملخصات ، الكود داخل توجيهات ما قبل المعالج
التي تعتمد على أي من المعطى رموز. يمكن إعطاء رمز أو أكثر ،
مفصولة بفواصل أو مسافة بيضاء. Ggcov-webdb يفهم المجموعة الفرعية التالية من
مجموعة أوامر المعالج المسبق لـ C:
· #إذا SYMBOL
· #إذا المعرفة (SYMBOL)
· #ifdef SYMBOL
· # يارب SYMBOL
· #else
· #endif
على سبيل المثال، -X DEBUG سوف يقمع fprintf () اتصل بهذا الرمز:
كثافة العمليات غير الموقعة
my_function (int x غير موقعة)
{
س + = 42 ؛
#ifdef التصحيح
fprintf (stderr، "my_function: x =٪ u \ n"، x) ؛
#endif
عودة س ؛
}
يفيد هذا الخيار في منع كود اختبار البنية التحتية ، أو رمز تصحيح الأخطاء ، أو
التعليمات البرمجية الأخرى التي تم تجميعها في اختبار التغطية القابل للتنفيذ ولكن تغطيتها
ليس كبيرا.
-Y كلمات, - تعليق الدعم =كلمات
لا تُدرج في الإحصائيات أو الملخصات التعليمات البرمجية الموجودة في الأسطر التي تحتوي أيضًا على ملف
تعليق من سطر واحد يشتمل على واحد فقط من المعطى كلمات. رمز واحد أو أكثر
يمكن فصلها بفواصل أو مسافة بيضاء. على سبيل المثال ، تحديد -Y
تجاهلني سوف يقمع يجزم() في هذا الكود:
كثافة العمليات غير الموقعة
my_function (int x غير موقعة)
{
س + = 42 ؛
تأكيد (س> = 42) ؛ /* تجاهلني */
عودة س ؛
}
يفيد هذا الخيار في منع كود اختبار البنية التحتية ، أو رمز تصحيح الأخطاء ، أو
التعليمات البرمجية الأخرى التي تم تجميعها في اختبار التغطية القابل للتنفيذ ولكن تغطيتها
ليس كبيرا.
-Z البداية ، كلمة النهاية ، ...
- دعم-تعليق-بين =البداية ، كلمة النهاية ، ...
لا تُدرج في الإحصائيات أو الملخصات رمزًا على الأسطر الموجودة بين تلك التي تحتوي على ملف
يتألف التعليق من سطر واحد فقط البداية والتعليق أحادي السطر التالي
تتألف فقط النهاية. يمكن إعطاء رمزين أو أكثر ، في أزواج ، مفصولة بالرمز
فواصل أو مسافة بيضاء. على سبيل المثال، -Z STARTIGNORE ، ENDIGNORE سوف يقمع
الوظيفة بأكملها في هذا الرمز:
/ * STARTIGNORE * /
كثافة العمليات غير الموقعة
my_function (int x غير موقعة)
{
س + = 42 ؛
عودة س ؛
}
// إنهاء
يفيد هذا الخيار في منع كود اختبار البنية التحتية ، أو رمز تصحيح الأخطاء ، أو
التعليمات البرمجية الأخرى التي تم تجميعها في اختبار التغطية القابل للتنفيذ ولكن تغطيتها
ليس كبيرا.
أمثلة
إنشاء قاعدة بيانات وسيطة لجميع المصادر المتاحة في الملف القابل للتنفيذ أ (على
بعض الأنظمة الأساسية فقط)، وتثبيته كاختبار فو في موقع الاختبارات الافتراضي.
مكدير /var/ggcov/tests/foo
ggcov-webdb -f - أ |
(قرص مضغوط /var/ggcov/tests/foo ; قطران -xzf - )
إنشاء قاعدة بيانات وسيطة لجميع مصادر C في الدليل الحالي.
ggcov-webdb * .c
إنشاء قاعدة بيانات وسيطة لجميع مصادر C في دليل واحد حيث يقع الكائن
توجد الملفات وملفات بيانات تغطية الاختبار في أدلة مختلفة:
ggcov-webdb / foo / obj / / foo / cov-data / / foo / src /
استخدم ggcov-webdb عبر الإنترنت باستخدام خدمات onworks.net