تصف هذه الصفحة أساسيات طريقة تنفيذ مراسل جديد للنتائج قم بتكوينه للاختبار.
الواجهة الأساسية
من أجل تحديد مراسل نتائج جديد في 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>