ios - يجمع - "لم يتم تجميع الوحدة النمطية للاختبار" عند استخدامtestable




مراحل جمع القرآن الكريم (6)

الحل أعلاه جيد إذا كنت تستخدم قرون / قرطاج. ولكن إذا كنت تستخدم أطر عمل من نظام iOS نفسه "على سبيل المثال جهات الاتصال" ، فأنت بحاجة إلى إضافة مسار إلى هذه الأُطر في "مسارات البحث في المكتبات" لهدف مشروعك الرئيسي.

أحاول استخدام إعلان @testable الجديد الخاص @testable لفضح دروسي لهدف الاختبار. ومع ذلك ، تظهر لي رسالة التحويل البرمجي هذه:

Intervals هي الوحدة التي تحتوي على الفصول التي أحاول الكشف عنها. كيف أتخلص من هذا الخطأ؟


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


ربما يرجع السبب في ذلك إلى أن هدفك الرئيسي هو Enable Testability هو NO . يجب عليك تعيينه على " YES في مخطط التصحيح (والذي يستخدم لتشغيل الاختبارات الخاصة بك).

إذا كنت تستخدم Carthage ، فيمكن أن تحدث هذه المشكلة عن طريق استيراد الأطر باستخدام @testable ، لأنها مبنية على نظام إصدار.

في معظم الأحيان ، من الممارسات السيئة استيراد الأطر باستخدام هذه البادئة ، لذلك يمكنك تجنبها. إذا لم تستطع ذلك ، فيجب عليك Enable Testability في نظام إصدار الأطر. https://developer.apple.com/library/content/releasenotes/DeveloperTools/RN-Xcode/Chapters/Introduction.html#//apple_ref/doc/uid/TP40001051-CH1-SW326


في الهدف الرئيسي الخاص بك ، تحتاج إلى تعيين خيار Enable Testability build على نعم.

وفقًا للتعليق الوارد منearnshavian أدناه ، يجب استخدام هذا فقط على تصميمات التصحيح وفقًا لملاحظات إصدار التفاح: "يجب استخدام إعداد تمكين قابلية الاختبار فقط في تكوين Debug الخاص بك ، لأنه يحظر التحسينات التي تعتمد على عدم تصدير الرموز الداخلية من التطبيق أو الإطار " https://developer.apple.com/library/content/releasenotes/DeveloperTools/RN-Xcode/Chapters/Introduction.html#//apple_ref/doc/uid/TP40001051-CH1-SW326


لم يحدث هذا في مشاريعي قبل Xcode 8 ، لكن بعد ترقيتي إلى Xcode 8 ، جعلني ذلك في حيرة.

الإجابات المنشورة هنا لم تحل مشاكلي. بالنسبة لي ، لقد تخلت عن هذه الاختبارات لأنها ليست ضرورية. لذلك قم بإلغاء تحديد أزرار الاختبار:

والآن الخطأ قد خرج.


إذا كنت تحاول اختبار الإطار:

انتقل إلى اختبار الهدف -> مرحلة البناء -> إنشاء مرحلة ملفات النسخ الجديدة -> اختيار الأُطُر -> إضافة جميع الأُطُر المستخدمة بشكل متكرر





swift2