التحقّق من حالة النظام

يتم تحديد أدوات التحقق من حالة النظام (SSC) على مستوى عملية الإعداد على مستوى الحزمة التي يتم تشغيلها بين كل وحدة. ويقومون بإجراء عمليات تحقق لتحديد ما إذا كانت الوحدة قد تغيرت ولم تُستعِد بعض الحالات، مثل تغيير موقع نظام

تُستخدم SSC بشكل أساسي للتأكد من أن كاتبي الوحدات لا ينسون تنظيف بعد إجراء الاختبارات؛ ولكن إذا حدث ذلك، فقم بتدوينها حتى يمكن معالجتها.

ويتمثل الاستخدام الثانوي في استعادة الحالة الأصلية متى أمكن، على سبيل المثال، إغلاق شاشة القفل إذا تم تركها مفتوحة.

تعريف XML لأداة التحقّق من حالة النظام

<system_checker class="com.android.tradefed.suite.checker.KeyguardStatusChecker" />
<system_checker class="com.android.tradefed.suite.checker.LeakedThreadStatusChecker" />
<system_checker class="com.android.tradefed.suite.checker.SystemServerStatusChecker" />

يتم تعريف إعلانات السلع والخدمات (SSC) ضمن العلامة system_checker في إعدادات Tradefed. XML.

التنفيذ

يجب أن تطبّق كلّ حملة Shopping ذكية ISystemStatusChecker واجهة، التي توفّر الطريقتَين الرئيسيتَين preExecutionCheck وpostExecutionCheck التي يتمّ تنفيذهما قبل تنفيذ كلّ وحدة وبعده.

من الممكن أن ينفذ المدقّق أحدهما فقط أو ينفّذ كلاهما إذا كان هناك حاجة إلى التحقّق من الحالة قبل الوحدة ومقارنتها بالحالة بعد الوحدة.

تتوفّر عدة أمثلة على عمليات التنفيذ في Tradefed. ننصح بالتركيز على عملية تحقّق واحدة في كل عملية تنفيذ لتحسين إمكانية إعادة الاستخدام. على سبيل المثال: SystemServerStatusCheck للتحقّق مما إذا تمت إعادة تشغيل عملية system_server على الجهاز خلال تنفيذ مجموعة اختبارية. في postExecutionCheck، يناديك deviceSoftRestarted، والذي يتم تحديده في NativeDevice للتحقّق من إعادة تشغيل عملية system_server.

تُعرِض كل عملية StatusCheckerResult، مما يتيح للمجموعة تحديد ما إذا كان يجب تسجيل معلومات إضافية، مثل تقرير خطأ.

أين يتم تحديدها في CTS؟

يتم تحديد أدوات التحقق من حالة نظام CTS في /test/suite_harness/tools/cts-tradefed/res/config/cts-system-checkers.xml.

كيفية العثور على أخطاء المدقّق

لا تظهر حالات تعذُّر التحقّق من النظام تلقائيًا إلا في السجلات وتقارير الأخطاء التي تم تسجيلها للطلب الذي يحمل الاسم التالي التنسيق bugreport-checker-post-module-<module name>.zip.

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

ومن الممكن تقديم تقرير مدقق النظام على أنه إخفاق الاختبار نفسه عن طريق جارٍ ضبط خيار --report-system-checkers على true. ينتج عن ذلك اختبار تشغيل الاختبار يظهر على أنّه تعذّر إتمامه، ويكون سبب الفشل هو أداة التحقّق من الحالة تحقق معين.