ios فشل كسكودي 4 لبدء اختبارات الوحدة(مع خطأ رابط) بعد أن قمت بإنشاء مخطط جديد




xcode unit-testing (4)

عملت اختبارات وحدة بلدي بشكل جيد في xcode4 حتى كان لي لإنشاء مخطط جديد لتجميع حزمة لتشغيل على الجهاز الخاص بي لاختبار.

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

حزمة الاختبار في [...] لا يمكن تحميل الاختبارات. أوكتست بسبب حدوث خطأ في الارتباط. ومن المرجح أن ديلد لا يمكن تحديد إطار إطار أو المكتبة التي تم ربط حزمة الاختبار ضد، ربما لأن الإطار أو مكتبة مسار التثبيت غير صحيح في وقت الارتباط.

ماذا كسر؟


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


اكتشفت مشكلتي أنه كان لدي "ربط الوقت الأمثل" تمكين على بلدي التصحيح البناء. وضعه إلى لا حل المشكلة.


أنا أيضا تشغيل عبر مشاكل مع كسكودي 4 بعد إضافة الهدف إلى مشروع موجود. أنا في نهاية المطاف أحسب أن شكودي ديريفدداتا للمشروع تضررت. عن طريق حذف تلك البيانات، تسببت في كسكودي لإعادة بناء البيانات وعاد المشروع إلى وضعها الطبيعي. لقد وجدت البيانات في مجلد مكتبة بيتي (~ / المكتبة / المطور / هكود / ديريفدداتا /).


حاولت كل شيء (بما في ذلك الإجابات الأخرى وتلك المذكورة هنا http://twobitlabs.com/2011/06/adding-ocunit-to-an-existing-ios-project-with-xcode-4/ )، ولكن وجدت أخيرا حل مختلف:

تعيين النشر بوستبروسيسينغ (في قسم النشر من إعدادات البناء) إلى نو ل ديبوغ الهدف.

قبل أن أفعل ذلك، تم تجريد الملف القابل للتنفيذ، وسوف يفشل الارتباط مع

Undefined symbols for architecture i386:
  "_OBJC_CLASS_$_SomeClassUnderTest", referenced from:
      objc-class-ref in SomeTest.o

بغض النظر عن هذا الشريط مرتبط المنتج والشريط التصحيح الرموز أثناء تعيين تعيين إلى نو، فإنه لم يحدث فرق - فقط تغيير إعداد النشر بوستبروسيسينغ أخيرا تأكد من أن الرموز لم يتم تجريدها.





unit-testing