BuildInfo
في TF هو عنصر مستخدَم على نطاق واسع لنقل الموارد اللازمة لإعداد الاختبارات وتنفيذها.
يتم تخزين كل شيء أو ربطه في BuildInfo، بدءًا من صور الأجهزة ووصولاً إلى حِزم APK التجريبية.
يتيح ذلك طريقة موحّدة للوصول إلى موارد الاختبار من الاختبار وفصل الاختبار عن الحصول على موارد الاختبار.
خصائص BuildInfo
السمتان الرئيسيتان لعناصر BuildInfo هما السمات والملفات:
- يمكن إضافة السمات باستخدام
#addBuildAttribute()، وهي تمثّل التصنيفات ومعلومات السلسلة الخاصة بالإصدارات. يمكن استخدام السمات لتخزين المعلومات ذات الصلة بالإصدار. - يمكن إضافة ملفات باستخدام
setFile()، ويتم تتبُّع الملف وإدارته بواسطةBuildInfoخلال دورة حياة الاستدعاء (على سبيل المثال، يتم التعامل معه بشكل صحيح أثناء التقسيم). يؤدي ذلك إلى تجنُّب حاجة الاختبار إلى معرفة أي شيء عن نظام الملفات، ويمكنه بدلاً من ذلك الاعتماد على عنصرBuildInfoالمجرد للحصول على موارده.
BuildInfo في الأجهزة المتعددة
عند إعداد إعدادات اختبارية باستخدام أجهزة متعددة، يكون هناك عنصر BuildInfo
واحد لكل جهاز. يتيح ذلك طلب الملفات واستهدافها من جهاز إلى آخر.
BuildInfo في عمليات الإنشاء المتعددة
من الممكن طلب إنشاء إصدارات من عدة أهداف. في هذه الحالات، يتوفّر كائن BuildInfo واحد لكل هدف. يتيح ذلك طلب الملفات واستهدافها من أي هدف.
تنسيق Proto
يمكن تسلسل BuildInfo بتنسيق protobuf لتسهيل استخدامه على مستوى الأنظمة المختلفة عند الحاجة.