وثائق

إعدادات البناء والاختبار

شرح كيفية استخدام Coroid لبناء واختبار مشروعك، ولماذا يعتبر ذلك أهم من أي إعدادات أخرى تقوم بها.

الوكيل الذي لا يستطيع بناء واختبار مشروعك لا يمكنه التحقق من عمله. كل ما يأتي بعد ذلك — بوابات الجودة، المراجعة، والثقة التي تمنحها لطلب السحب — يعتمد على صحة هذه الأوامر.

Coroid يكتشفها عند إنشاء المشروع. تحقق مما وجده.

ما يحتاجه Coroid

الأمرالاستخدام
تثبيتاستعادة التبعيات في مساحة عمل نظيفة
بناءالتأكد من أن المشروع يتم تجميعه بشكل صحيح
اختبارتشغيل مجموعة الاختبارات وقراءة النتائج

مساحة العمل نظيفة وقابلة للتخلص منها لكل مهمة، لذا يجب أن تعمل كل الأوامر من نسخة جديدة بدون أي ملفات مؤقتة أو برامج مثبتة مسبقًا.

أماكن الخطأ الشائعة في الكشف

مستودعات الكود المتعددة. الأوامر موجودة في مجلد فرعي، أو تحتاج إلى مرشح لمساحة العمل. قد يوجد الأمر على المستوى الرئيسي لكنه يقوم بعمل خاطئ.

خطوات الإعداد. مجموعات الاختبارات التي تحتاج إلى توليد كود، أو ترحيل، أو بناء بيانات اختبار قبل تشغيلها. الكشف يرى أمر الاختبار ويغفل عن متطلباته الأساسية.

تبعيات الخدمات. الاختبارات التي تحتاج إلى قاعدة بيانات، أو ذاكرة تخزين مؤقتة، أو قائمة انتظار لتشغيلها. إذا افترضت مجموعة الاختبارات أن localhost:5432 يعمل، فستفشل في مساحة عمل نظيفة.

متغيرات البيئة. مجموعات الاختبارات التي تقرأ الإعدادات من .env غير موجود في المستودع.

علامات توضيحية لوجود تهيئة خاطئة

تتمثل العلامة في فشل المهام أثناء التحقق لأسباب لا علاقة لها بالتغيير — نفس الفشل في كل مهمة، في نفس المرحلة، بغض النظر عما تم طلبه.

إذا كان أول ما تلاحظه هو فشل قبل كتابة أي كود، فهو غالبًا أمر البناء. وإذا فشل بعد إجراء التغيير، فهو عادةً أمر الاختبار أو شيء تعتمد عليه الاختبارات.

الحاويات

عندما يمكن تحويل المشروع إلى حاوية، يمكن لـ Coroid استخدامها كبيئة تنفيذ — مما يحل مشاكل تبعيات الخدمات وانحراف البيئة دفعة واحدة، لأن الحاوية تحتوي على كل ذلك مسبقًا.

إذا كان لديك ملف Dockerfile أو Compose يعمل على تشغيل اختباراتك، فهو عادةً أفضل تهيئة موثوقة متاحة لك.

دعم اللغات

الوكلاء يعملون بأي لغة، لكن مدى قدرة Coroid على التحقق تلقائيًا يختلف — خاصةً فيما يتعلق بالتنقل الدلالي. راجع دعم اللغات وبيئة الوكيل لمعرفة ما هو مثبت في مساحة العمل وأي اللغات لديها خادم لغة.

صحة هذه الأوامر أهم من اللغة التي تستخدمها. زوج أوامر بناء واختبار صحيح في لغة ذات دعم ضعيف أفضل من زوج أوامر خاطئ في لغة ذات دعم قوي.