تغطية رمز Delphi هي أداة تغطية رمز بسيطة لـ Delphi تقوم بإنشاء تقارير تغطية الكود بناءً على ملفات خريطة مفصلة.
يرجى أيضًا التحقق من هذا المشروع لأنه يضيف معالجًا إلى Delphi IDE للمساعدة في إنشاء تغطية رمز Delphi وتشغيل Delphi.
يجب أن يحتوي المشروع الذي تريد تشغيله على تقرير تغطية التعليمات البرمجية لتكوين "تصحيح" يولد ملف خريطة مفصل.
يقيس تغطية رمز Delphi حاليًا فقط "تغطية الخط" ، أي أنه سيتم تتبع كل سطر تم إنشاؤه رمزًا ووضع علامة عليه إذا تم تنفيذه.
بالنسبة للتطبيقات التي تستخدم مكتبات حزم Borland (والتي هي بشكل أساسي DLLs) أو DLLs الخارجية ، ستحاول DCC تحميل ملف .map لكل DLL وإذا كان موجودًا ووحدات في تلك المكتبات هي جزء من الوحدات المغطاة ، فستتمتد تغطية الكود إلى DLL/BPL المحملة كجزء من التطبيق. يجب أن يكون ملف .map موجودًا في نفس الدليل مثل DLL الذي تم تحميله.
قم بتنزيل أحدث إصدار ، قم بفك ضغط الملف ووضعه على سبيل المثال في دليل تثبيتات Delphi "Bin" أو في مكان ما في "المسار".
جميع المعلمات تفهم أيضًا متغيرات البيئة بأسلوب الدُفعات (مثل ٪ windir ٪ وما إلى ذلك) إذا تم استخدام ملف لدليل المصدر (انظر -spf ) ، فهناك أيضًا متغيرات بيئة مسموح بها. من الممكن استبعاد وحدات محددة في ملف الوحدات (انظر -uf ) عن طريق إعداد "!" قبل اسم الوحدة.
افتح موجه سطر الأوامر في الدليل حيث يكون التطبيق المترجم والقابل للتنفيذ.
النوع: CodeCoverage -m TestApp.map -e TestApp.exe -u TestUnit TestUnit2 -xml -html
نظرًا لميزات اللغة الأحدث المستخدمة ، يلزم وجود برنامج التحويل البرمجي الأحدث إلى حد ما. من المعروف أن المشروع لا يدعم Delphi XE2. من المحتمل أن يعمل XE3. يتم التطوير الرئيسي مع 10.x إصدارات.
-html كمعلمة)لكل وحدة سيكون هناك وحدة. html مع ملخص للتغطية ، تليها المصدر. تم تغطية الخطوط الخضراء. لم تكن الخطوط الحمراء خطوط مغطاة. الأسطر الأخرى لم يكن لديها رمز تم إنشاؤه لذلك. يوجد أيضًا ملف codecoverage_summary.html يلخص التغطية ولديه روابط لتقارير الوحدة التي تم إنشاؤها.
-xml كمعلمة)يتم إنشاء تقرير XML الموجز يسمى Codecoverage_Summary.xml في دليل الإخراج المتوافق مع إخراج XML من EMMA. استخدم بالاشتراك مع المفاتيح "-xmllines" و "-xmlgenerics" لتغطية التعليمات البرمجية التفصيلية لكل سطر.
-emma أو -emma21 كمعلمة)أصبح من الممكن الآن إنشاء إخراج متوافق مع EMMA والذي يسمح باستخدام EMMA لدمج عمليات تغطية التعليمات البرمجية المتعددة بالإضافة إلى استخدام EMMA لتوليد التقارير.
DCC متوافق مع Delphi حتى 10.4.2 ، كلاهما 32 و 64 بت.
يمكنك دمج نتائج تقرير XML في Sonarqube. راجع البرنامج المساعد Delphi Sonarqube أو إصدار أحدث هنا للحصول على معلومات مفصلة.
يمكنك دمج تقرير XML باستخدام البرنامج المساعد Hudson Emma. يمكن دمج تقرير HTML باستخدام المكون الإضافي HTML Publisher.
تم إصدار أحدث إصدار ممكن من خلال الدعم السخي من DevFactory و Mendrix.
استلهم هذا المشروع من الأدوات الرائعة في عالم جافا مثل إيما. لقد كان هذا المشروع باقدًا في شكل غير مكتمل على HardDrive لأكثر من عام. وأخيرا انزلق.
-m MapFile.map | ملف الخريطة المستخدم كإدخال |
-e Executable.exe | القابل للتنفيذ للتشغيل |
-sd directory | الدليل حيث يمكن العثور على المصدر |
-sp directory directory2 | الدلائل التي يمكن العثور عليها المصدر |
-spf filename | استخدم أدلة المصدر المدرجة في الملف المشار إليها بواسطة اسم الملف. دليل واحد لكل سطر في الملف |
-esm mask1 mask2 etc | قائمة أقنعة الملفات التي تستبعد من قائمة الوحدات |
-ism mask1 mask2 etc | تحرض وحدات فقط مطابقة أقنعة الملف المقدمة |
-ecp prefix1 mask2 etc | قائمة بادئات الفئة لاستبعادها من التغطية |
-od directory | الدليل الذي سيتم وضع ملفات الإخراج - ملاحظة - يجب أن يكون الدليل موجودًا |
-u TestUnit TestUnit2 | الوحدات التي يجب فحصها لتغطية الرمز |
-uf filename | تغطية وحدات المدرجة في الملف المشار إليها بواسطة اسم الملف. وحدة واحدة لكل سطر في الملف |
-v | إظهار الإخراج المطول |
-dproj ProjectFile.dproj | تحليل ملف المشروع لـ Source Dirs ، الاسم القابل للتنفيذ ، صفحة التعليمات البرمجية والخيارات الأخرى. لاحظ أن الخيارات التي لا يمكن أن يكون لها سوى قيمة واحدة ، مثل صفحة التعليمات البرمجية ، سيتم الكتابة عليها بترتيب المظهر في حالة مواجهة مفاتيح متعددة ذات صلة. |
-a Param Param2 | المعلمات لتمريرها إلى التطبيق الذي يجب فحصه لتغطية الكود. ^ شخصية هروب |
-lt [filename] | سجل الأحداث إلى ملف سجل النص. اسم الملف الافتراضي هو: delphi-code-coverage-debug.log |
-lapi | أحداث السجل إلى Windows API OutputDeBugString |
-ife | قم بتضمين ملحق الملف - سيوقف هذا "Common.encodings" الذي يجري "تحويله" إلى "مشترك" |
-efe | استبعاد تمديد الملف - سيتم "تحويل" "Common.Encodings.pas" إلى "Common.encodings" (والأسف ، "Common.encodings" إلى "Common"). هذا بشكل افتراضي. |
-emma | قم بإنشاء إخراج تغطية EMMA كـ "تغطية" في دليل الإخراج. |
-emma21 | قم بإنشاء إخراج تغطية EMMA21 كـ "تغطية" في دليل الإخراج. |
-meta | إنشاء ملفات ميتا وتغطية منفصلة عند إنشاء إخراج EMMA - "Coverage.em" و "Coverage.ec" سيتم إنشاء بيانات التعريف وبيانات التغطية. ملاحظة: الاحتياجات -emma كذلك. |
-xml | قم بإنشاء إخراج تغطية XML - قم بإنشاء إخراج XML كـ "CodeCoverage_Summary.xml" في دليل الإخراج. |
-xmllines | يضيف تغطية الخطوط إلى إخراج تغطية XML الناتج. |
-xmlgenerics | يُمزج تغطية الخطوط لأحداث متعددة لنفس اسم الملف (مفيد بشكل خاص في حالة الطبقات العامة). |
-html | قم بإنشاء إخراج تغطية HTML كـ "codecoverage_summary.html" في دليل الإخراج. |
-uns dll_or_exe unitname [unitname_2] | إنشاء مساحة اسم منفصلة (اسم مساحة الاسم سيكون اسم الوحدة النمطية بدون تمديد) فقط للوحدات المدرجة داخل الوحدة النمطية |
-mns name dll_or_exe [dll_or_exe_2] | قم بإنشاء مساحة اسم منفصلة مع الاسم المحدد لـ DLL المدرجة: S. سيتم الحصول على جميع الوحدات التي تم تحميلها في تلك الوحدات (الوحدات). |
-lcl LineCountLimit | عدد المرات التي يتم تنفيذ الخط حتى الحد المحدد |
-cp CodePage | رقم صفحة الكود من ملفات المصدر |
-tec | تم تفتيش رمز الخروج من التطبيق |
-twd | استخدم مسار التطبيق كدليل عمل |
تغطية رمز Delphi مرخصة بموجب شروط ترخيص Mozilla Public ، v. 2.0. يمكنك الحصول على نسخة من الترخيص على http://mozilla.org/mpl/2.0/.