قم بتشغيل XCTest

يصف هذا الدليل كيفية إعداد اختبار XCTest للاختبار في Firebase Test Lab.

الخطوة 1 : قم بتكوين موقع البيانات المشتقة لمشروعك

يضع Xcode عناصر iOS المجمعة، بما في ذلك أي اختبارات تقوم بإنشائها، في دليل البيانات المشتقة. من الممكن الاحتفاظ بالموقع الافتراضي لهذا الدليل، إذا كنت ترغب في ذلك، ولكن غالبًا ما يكون من المفيد اختيار مكان يسهل الوصول إليه للملفات، خاصة إذا كنت ستجري اختبارات باستخدام Test Lab كثيرًا:

  1. افتح مشروعك في Xcode.
  2. في شريط قوائم macOS، حدد ملف > إعدادات المشروع...
  3. قم بتغيير القائمة المنسدلة للبيانات المشتقة من الموقع الافتراضي إلى الموقع المخصص .
  4. في الحقل الموجود أسفل القائمة المنسدلة، حدد موقعًا لـ Xcode لإخراج اختباراتك إليه. (هذا هو FOLDER_WITH_TEST_OUTPUT الخاص بك)

الخطوة 2 : إنشاء ملف اختبار عام

يقوم Test Lab بإجراء اختبارات الوحدة واختبارات واجهة المستخدم باستخدام إطار عمل XCTest . لتشغيل اختبارات XCTests لتطبيقك على أجهزة Test Lab، قم بإنشائها للاختبار على جهاز iOS عام:

  1. من القائمة المنسدلة للجهاز الموجودة أعلى نافذة مساحة عمل Xcode، حدد جهاز iOS عام .
  2. في شريط قوائم macOS، حدد المنتج > البناء من أجل > الاختبار .

وكبديل، يمكنك إنشاء XCTest الخاص بك من سطر الأوامر. استخدم الأمر التالي في المحطة:

مشروع

xcodebuild -project PATH/TO/YOUR_WORKSPACE/YOUR_PROJECT.xcodeproj \
   -scheme YOUR_SCHEME \
   -derivedDataPath FOLDER_WITH_TEST_OUTPUT \
   -sdk iphoneos build-for-testing

مساحة العمل

xcodebuild -workspace PATH/TO/YOUR_WORKSPACE.xcworkspace \
   -scheme YOUR_SCHEME \
   -derivedDataPath FOLDER_WITH_TEST_OUTPUT \
   -sdk iphoneos build-for-testing

الخطوة 3 : قم بالتوقيع على الاختبار الخاص بك والتحقق منه

  1. تأكد من توقيع جميع العناصر الموجودة في التطبيق والاختبار. على سبيل المثال، يمكنك القيام بذلك من خلال Xcode عن طريق تحديد إعدادات التوقيع مثل توفير ملف التعريف والهوية. لمزيد من المعلومات، راجع توقيع رمز Apple .

  2. تحقق من توقيع التطبيق عن طريق تشغيل codesign --verify --deep --verbose /path/to/MyApp.app حيث "MyApp" هو اسم التطبيق داخل المجلد غير المضغوط. وهذا يختلف لكل مشروع. الإخراج المتوقع هو MyApp.app: valid on disk .

  3. إذا كنت تقوم بتشغيل XCUITest، فأنت بحاجة إلى التحقق من الاختبار والعداء عن طريق تشغيل codesign --verify --deep --verbose /path/to/MyTest-Runner.app حيث "MyTest" هو اسم العداء داخل مجلد غير مضغوط. وهذا يختلف لكل مشروع. الإخراج المتوقع هو MyTest-Runner.app: valid on disk .

الخطوة 4 : حزم التطبيق الخاص بك واختبار التحميل

  1. بعد إنشاء الاختبار بنجاح، قم بضغطه للتحميل إلى Test Lab:

    cd FOLDER_WITH_TEST_OUTPUT/Build/Products : \
    zip -r MyTests.zip Debug-iphoneos YOUR_SCHEME_iphoneosDEPLOYMENT_TARGET-arm64.xctestrun
    

يمكنك أيضًا تجميع الاختبار الخاص بك عن طريق ضغط ملفات الاختبار يدويًا:

  1. افتح Finder وانتقل إلى FOLDER_WITH_TEST_OUTPUT .

  2. افتح المجلد الذي يحتوي على اسم مشروعك كبادئة، ثم انتقل إلى مجلد Build/Products بداخله.

  3. حدد المجلدات Debug-iphoneos و YOUR_SCHEME _iphoneos DEPLOYMENT_TARGET -arm64.xctestrun ثم قم بضغطهما.

الخطوة 5 : (اختياري) قم بإجراء الاختبار محليًا

قبل إجراء الاختبار باستخدام Test Lab، يمكنك تشغيله محليًا باستخدام جهاز متصل عبر USB للتحقق من جودة سلوكه:

xcodebuild test-without-building \
    -xctestrun "Derived Data/Build/Products/YOUR_SCHEME.xctestrun" \
    -destination id=your-phone-id

الخطوات التالية

قم بتحميل الاختبار الخاص بك وتشغيله في وحدة تحكم Firebase أو gcloud CLI .