جامع المقاييس التي يحركها المضيف

تعمل أدوات تجميع المقاييس التي يحركها المضيف على المضيف وليس على جانب الجهاز. يتفاعلون مع الجهاز من الجانب المضيف لجمع المقاييس التي يستهدفونها.

تصميم جامع المقاييس

الفئة الأساسية التي سيتم توسيعها بواسطة جميع المجمعات هي BaseDeviceMetricCollector ، والتي تساعد في توفير نفس الوظائف الأساسية المشتركة:

  • الفلتره
  • تعطيل
  • التجميع على حالات الاختبار مقابل عمليات التشغيل الاختبارية

يتبع المجمعون نموذج مراسل النتائج حيث أنهم يتزامنون مع تنفيذ الاختبار على المضيف. بمعنى آخر، إذا كانت الاختبارات تعتمد على المضيف، فسيتم تنفيذ أدوات التجميع قبل أن ينتقل الاختبار إلى خطوة التنفيذ التالية.

على سبيل المثال، إذا تم تنفيذ المجمع على testEnded ، قبل أن ينتقل التنفيذ إلى الاختبار التالي باستخدام testStart ، فسيتم تنفيذ المجمع (المجمعات).

تنفيذ أداة تجميع المقاييس التي يحركها المضيف

عند التنفيذ فوق الفئة الأساسية BaseDeviceMetricCollector ، يمكنك أن تقرر متى ترغب في جمع المقاييس الخاصة بك خلال دورة الحياة:

  • عندما يبدأ التشغيل التجريبي: onTestRunStart
  • عندما تبدأ حالة الاختبار: onTestStart
  • عندما تنتهي حالة الاختبار: onTestEnd
  • عند انتهاء التشغيل التجريبي: onTestRunEnd

تنفيذ عملية جمع غير متزامنة

بالإضافة إلى الأساليب المتزامنة، يوفر TF فئة أساسية للتنفيذ والتي تقوم بإجراء جمع غير متزامن دوري، وهوScheduledDeviceMetricCollector ، والذي يوفر طريقة collect ليتم تنفيذها والتي سيتم تشغيلها بشكل دوري.

الفترة قابلة للتخصيص حسب الخيارات.

تكوين XML

ستكون علامة الكائن metrics_collector ، على سبيل المثال:

<metrics_collector class="com.android.tradefed.device.metric.AtraceCollector">
    <option name="categories" value="freq"/>
</metrics_collector>

التوصيات

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

,

تعمل أدوات تجميع المقاييس التي يحركها المضيف على المضيف وليس على جانب الجهاز. يتفاعلون مع الجهاز من الجانب المضيف لجمع المقاييس التي يستهدفونها.

تصميم جامع المقاييس

الفئة الأساسية التي سيتم توسيعها بواسطة جميع المجمعات هي BaseDeviceMetricCollector ، والتي تساعد في توفير نفس الوظائف الأساسية المشتركة:

  • الفلتره
  • تعطيل
  • التجميع على حالات الاختبار مقابل عمليات التشغيل الاختبارية

يتبع المجمعون نموذج مراسل النتائج حيث أنهم يتزامنون مع تنفيذ الاختبار على المضيف. بمعنى آخر، إذا كانت الاختبارات تعتمد على المضيف، فسيتم تنفيذ أدوات التجميع قبل أن ينتقل الاختبار إلى خطوة التنفيذ التالية.

على سبيل المثال، إذا تم تنفيذ المجمع على testEnded ، قبل أن ينتقل التنفيذ إلى الاختبار التالي باستخدام testStart ، فسيتم تنفيذ المجمع (المجمعات).

تنفيذ أداة تجميع المقاييس التي يحركها المضيف

عند التنفيذ فوق الفئة الأساسية BaseDeviceMetricCollector ، يمكنك أن تقرر متى ترغب في جمع المقاييس الخاصة بك خلال دورة الحياة:

  • عندما يبدأ التشغيل التجريبي: onTestRunStart
  • عندما تبدأ حالة الاختبار: onTestStart
  • عندما تنتهي حالة الاختبار: onTestEnd
  • عند انتهاء التشغيل التجريبي: onTestRunEnd

تنفيذ عملية جمع غير متزامنة

بالإضافة إلى الأساليب المتزامنة، يوفر TF فئة أساسية للتنفيذ والتي تقوم بإجراء جمع غير متزامن دوري، وهوScheduledDeviceMetricCollector ، والذي يوفر طريقة collect ليتم تنفيذها والتي سيتم تشغيلها بشكل دوري.

الفترة قابلة للتخصيص حسب الخيارات.

تكوين XML

ستكون علامة الكائن metrics_collector ، على سبيل المثال:

<metrics_collector class="com.android.tradefed.device.metric.AtraceCollector">
    <option name="categories" value="freq"/>
</metrics_collector>

التوصيات

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