أساسيات CI باستخدام swift test والمخرجات
أعِد تدفق CI بسيطًا: checkout → build → test → package → upload . تعلّم الأوامر الأساسية ونصائح التخزين المؤقت وكيفية إنشاء مخرجات الإصدارات.
أساسيات CI باستخدام swift test والمخرجات درس مجاني في Swift Academy على CoddyKit. هذا هو الدرس 3 من أصل 3. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Swift Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Swift Academy 3 دروس في المجموع.
ما الذي يفعله CI
يجب أن يشغّل CI المهام عند كل عملية دفع وإنشاء وسم:
- البناء والاختبار باستخدام SwiftPM
- إنشاء عناصر الإصدار
- رفعها عند إنشاء الوسوم
SUT للاختبارات
سيبني CI الحزمة ويشغّل الاختبارات على شفرتكم (SUT). اجعلوا الدوال صغيرة وقابلة للاختبار.
// Example SUT and testable logic used by CI.
// In real projects, this lives in Sources/ and Tests/.
// Here we only show the code idea.
public struct Math {
public static func add(_ a: Int, _ b: Int) -> Int { a + b }
}
print("Demo SUT ready: Math.add(2,3) =", Math.add(2,3)) // 5أوامر CI الأساسية
استخدم swift build للترجمة وswift test (غالبًا مع --parallel) لتشغيل الاختبارات. أضف بنية release للتوزيع.
// Typical CI steps (illustrative):
// swift --version
// swift build
// swift test --parallel
// swift build -c release
//
// Fail fast: any non-zero exit stops the job.
print("CI steps: build → test → release build")إنشاء العناصر
بعد إنشاء بنية release، اجمع الملفات الثنائية (أو المصادر) في أرشيف صغير لرفعه كعنصر إصدار.
// Create a release binary and zip it (examples):
// swift build -c release
// zip app-macos.zip .build/release/app
//
// Or for libraries, zip the source or attach an XCFramework if applicable.
print("Artifacts: zip files from .build/release for distribution")تسريع عمليات البناء
نصائح التخزين المؤقت:
- خزّن مجلد
.buildمؤقتًا بين عمليات التشغيل - ثبّت التبعيات باستخدام الإصدارات
- أبقِ الاختبارات سريعة (فترات انتظار قصيرة أو دون انتظار)
إصدارات تُطلَق عند إنشاء الوسوم
استخدم مهمة تُشغَّل عند إنشاء وسم لإنتاج العناصر الرسمية لإصدارات مثل v1.2.0.
// Release pipeline idea:
// - Trigger on tags: refs/tags/v*
// - Build & test
// - Produce artifacts
// - Upload artifacts to the release
//
// Keep the tag name consistent (e.g., v1.2.0).
print("Tip: run a special pipeline on tags to publish artifacts")استخدام swift test
مراجعة سريعة: ما الأمر الذي يشغّل اختبارات الحزمة في CI؟
مراجعة
مراجعة: في CI، شغّل swift build وswift test، ثم أنشئ بنية release واضغط العناصر باستخدام zip. فعّل النشر عند إنشاء الوسوم، وخزّن .build مؤقتًا لتسريع عمليات التشغيل.
الأسئلة الشائعة
هل درس «أساسيات CI باستخدام swift test والمخرجات» مجاني؟
نعم — نص درس «أساسيات CI باستخدام swift test والمخرجات» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Swift Academy، انتقل إلى CoddyKit PRO. تتضمن دورة Swift Academy 3 دروس في المجموع.
ماذا ستتعلم في «أساسيات CI باستخدام swift test والمخرجات»؟
أعِد تدفق CI بسيطًا: checkout → build → test → package → upload . تعلّم الأوامر الأساسية ونصائح التخزين المؤقت وكيفية إنشاء مخرجات الإصدارات. تتمرن على Swift Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.
هل أحتاج إلى خبرة سابقة لأبدأ Swift Academy؟
لا تُشترط خبرة سابقة. Swift Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 3 من أصل 3.
كم من الوقت يستغرق درس «أساسيات CI باستخدام swift test والمخرجات»؟
معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.
هل يمكنني كتابة وتشغيل أكواد في درس Swift Academy هذا؟
نعم. كل درس في Swift Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.
جميع الدروس في هذه الدورة
- حزم المكتبات مقابل الحزم التنفيذية
- الإصدار الدلالي ووسم الإصدارات
- أساسيات CI باستخدام swift test والمخرجات