# المشروع المُنشأ {#generated-project} ::: warning REQUIREMENTS - مشروع تم إنشاؤه - حساب ومشروع تويست ::: لتشغيل الاختبارات بشكل انتقائي مع مشروعك الذي تم إنشاؤه، استخدم الأمر `tuist test`. يقوم الأمر بتجزئة مشروع Xcode الخاص بك بنفس الطريقة التي يقوم بها لتسخين ذاكرة التخزين المؤقت، وعند النجاح، فإنه يستمر في التجزئة لتحديد ما تغير في عمليات التشغيل المستقبلية. في عمليات التشغيل المستقبلية `اختبار تويست` يستخدم التجزئة بشفافية لتصفية الاختبارات لتشغيل الاختبارات التي تغيرت فقط منذ آخر عملية تشغيل اختبار ناجحة. على سبيل المثال، بافتراض الرسم البياني التالي للتبعية: - `الميزة A` لديها اختبارات `FeatureATests` ، وتعتمد على `الأساسية` - `الميزة ب` لديه اختبارات `FeatureBTests` ، ويعتمد على `الأساسية` - `يحتوي الموقع الأساسي` على اختبارات `CoreTests CoreTests` `سوف يتصرف اختبار تويست` على هذا النحو: | الإجراء | الوصف | الحالة الداخلية | | ------------------------- | ------------------------------------------------------------------------- | ----------------------------------------------------------------------------------- | | `اختبار تويست` استدعاء | يقوم بتشغيل الاختبارات في `CoreTests` و `FeatureATests` و `FeatureBTests` | يتم الاحتفاظ بتجزئة `ميزات الاختبارات` و `ميزات الاختبارات` و `الاختبارات الأساسية` | | `الميزة يتم تحديث` | يقوم المطور بتعديل الكود البرمجي للهدف | كما في السابق | | `اختبار تويست` استدعاء | يقوم بتشغيل الاختبارات في `FeatureATests` لأنه تم تغيير التجزئة | يتم استمرار التجزئة الجديدة لـ `FeatureATests` | | `تم تحديث الموقع الأساسي` | يقوم المطور بتعديل الكود البرمجي للهدف | كما في السابق | | `اختبار تويست` استدعاء | يقوم بتشغيل الاختبارات في `CoreTests` و `FeatureATests` و `FeatureBTests` | التجزئة الجديدة لـ `FeatureATests` `FeatureBTests` ، و `CoreTests` يتم استمرارها | `يتكامل اختبار tuist test` مباشرةً مع التخزين المؤقت الثنائي لاستخدام أكبر عدد ممكن من الثنائيات من وحدة التخزين المحلية أو البعيدة لتحسين وقت الإنشاء عند تشغيل مجموعة الاختبارات الخاصة بك. يمكن للجمع بين الاختبار الانتقائي والتخزين المؤقت الثنائي أن يقلل بشكل كبير من الوقت الذي يستغرقه تشغيل الاختبارات على CI الخاص بك. ## اختبارات واجهة المستخدم {#ui-tests} يدعم Tuist الاختبار الانتقائي لاختبارات واجهة المستخدم. ومع ذلك، يحتاج تويست إلى معرفة الوجهة مسبقًا. فقط إذا قمت بتحديد الوجهة `الوجهة` المعلمة ، سيقوم تويست بتشغيل اختبارات واجهة المستخدم بشكل انتقائي، مثل: ```sh tuist test --device 'iPhone 14 Pro' # or tuist test -- -destination 'name=iPhone 14 Pro' # or tuist test -- -destination 'id=SIMULATOR_ID' ```