إنشاء تقرير النتائج

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

الواجهة الأساسية

من أجل تحديد مراسل نتائج جديد في Tradefed، يجب تنفيذ الفئة الـ ITestInvocationListener تسمح بتلقي والتعامل مع مراحل مختلفة من الاستدعاء:

  • invocationStarted
  • invocationEnded
  • invocationFailed

يتعامل مراسلو النتائج أيضًا مع المراحل المختلفة لكل إجراء اختبار:

  • testRunStarted
  • testStarted
  • testFailed أو testIgnored
  • testEnded
  • testRunFailed
  • testRunEnded

وبالنظر إلى كل هذه الأحداث، هناك نوعان رئيسيان من مراسلي النتائج، هما:

  • الاهتمام فقط بالإبلاغ عن النتائج النهائية الكاملة.
  • اتّخاذ إجراء بشأن النتائج الجزئية.

جهة الإبلاغ عن النتائج التي تبلغ النتائج النهائية الكاملة

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

ننصح هؤلاء المراسلين بتمديد مهلة CollectingTestListener بدلاً من ذلك. الواجهة الأساسية لتجنب إعادة تنفيذ عملية حفظ وتخزين نتيجة حتى invocationEnded.

أداة الإبلاغ عن النتائج التي تعرض نتائج جزئية

يُستخدم هذا النوع عادةً في منهج بث النتائج، عندما تؤدي النتائج يتم إرسالها ودفعها إلى بعض الأماكن الأخرى على الفور. على سبيل المثال: مراسل التي تسجل النتائج إلى وحدة التحكم ستكون من هذا النوع.

ويرتبط هذا النوع بنوع المناولة المطلوب في الأحداث، لذا، يُنصَح باستخدام الواجهة الأساسية.

إعدادات XML

علامة الكائن هي result_reporter. مثلاً:

<result_reporter class="com.android.tradefed.result.ConsoleResultReporter">
    <option name="suppress-passed-tests" value="true"/>
</result_reporter>