تعلّم كيفية اختبار تمارين لغة C الخاصة بك على Exercism
كل تمرين يوفّر اختبارات الوحدة ووصفة بناء باستخدام Make. وأنت تقدّم التنفيذ.
صُمّم كل ملف اختبار ليُربط مع تنفيذك ويوفّر ملفًا تنفيذيًا في الطرفية يشغّل الاختبارات. وعند تشغيل الملف التنفيذي للاختبار، تُطبع رسائل لكل اختبار فاشل، ويُبلَّغ عن حالة خروج غير صفرية عند فشل الاختبارات.
للعمل على تمرين ما:
TEST_IGNORE().كل تمرين يجلب معه ملف makefile إلى جانب ملف .c يحتوي على اختبارات الوحدة.
لن تحتاج إلى تعديل ملف Make.
يفترض ملف Make المرفق أن تنفيذك موجود في ملف ترويسة (.h) وملف مصدري (.c) يحملان اسم التمرين.
على سبيل المثال، يتوقع تمرين bob تنفيذًا في bob.h و bob.c.
وفي التمارين التي تحتوي أسماؤها على شرطات، يُفترض أن تستخدم الملفات المصدرية شرطات سفلية، لذا يتوقع word-count الملفين word_count.h و word_count.c.
وقد ترى أن تنفيذك بسيط بما يكفي ليكفي بالكامل في ملف الترويسة، وفي هذه الحالة يمكنك حذف ملف .c.
أنشئ ملفات التنفيذ الأولية قبل تشغيل Make.
إذا لم تكن لديك الملفان bob.h و bob.c عند تشغيل Make لتمرين bob، فسيولّد Make خطأً مفاده أن الملفات غير موجودة.
يمكن أن تكون هذه الملفات فارغة، لكن يجب أن تكون موجودة.
أبسط طريقة لبناء الكود هي استخدام make من واجهة سطر الأوامر (CLI).
على Linux تتوفر واجهة سطر الأوامر في bash أو ما شابهها، وعلى MacOS استخدم Terminal.
وعلى Windows 10، يتوفر Bash الخاص بـ Windows Subsystem for Linux (WSL).
لفعل ذلك، بافتراض أن المجلد الحالي هو مجلد التمرين:
$ make
سيترجم هذا كودك ويشغّل الاختبارات.
يأتي makefile أيضًا ببناء يتحقق من بعض الأخطاء الشائعة المتعلقة بتسريب الذاكرة والوصول خارج حدود المصفوفات.
لتشغيل هذه الفحوص، استخدم ما يلي من سطر الأوامر:
$ make memcheck
لتنظيف ما بعد البناء، يمكنك أن تطلب من make حذف كل مخرجات البناء، بما في ذلك الملف التنفيذي:
$ make clean
على MacOS يمكنك أيضًا استخدام Xcode. لبناء الكود، اختر Build من شريط الأدوات.