ShardMainResultForwarder

public class ShardMainResultForwarder
extends ResultForwarder implements ILogSaverListener

java.lang.Object
   ↳ com.android.tradefed.result.ResultForwarder
     ↳ com.android.tradefed.invoker.ShardMainResultForwarder


ResultForwarder يجمع نتائج عمليات استدعاء الاختبارات المجزأة. ولا يتم إبلاغ المستمعين باكتمال عملية الاستدعاء إلا بعد اكتمال جميع عمليات الاستدعاء المجزأة.

هذه الفئة ليست آمنة للاستخدام المتزامن. من المتوقّع أن يتم قفل هذا الصف عند إرسال نتائج الاختبار، وذلك لمنع استدعاء عمليات رد الاتصال خارج الترتيب.

ملخّص

طُرق وضع التصميم العامة

ShardMainResultForwarder(List<ITestInvocationListener> listeners, int expectedShards)

أنشئ ShardMainResultForwarder.

الإجراءات العامة

List<ITestInvocationListener> getListeners()

الحصول على قائمة أدوات معالجة الأحداث

void invocationEnded(long elapsedTime)

تعرض هذه السمة ما إذا تم إنهاء عملية الاستدعاء بنجاح أو بسبب حدوث خطأ.

void invocationEnded(long elapsedTime, IInvocationContext context)

عملية ردّ أكثر تفصيلاً لتحديد الجزء الذي انتهى.

void invocationFailed(FailureDescription failure)

تعرض هذه السمة عملية استدعاء غير مكتملة بسبب حدوث خطأ.

void invocationFailed(Throwable cause)

تعرض هذه السمة عملية استدعاء غير مكتملة بسبب حدوث خطأ.

void invocationSkipped(SkipReason reason)

تسجيل حالة استدعاء على أنّه تم تخطّيه

void invocationStarted(IInvocationContext context)

تسجّل هذه السمة بداية تنفيذ الاختبار.

void logAssociation(String dataName, LogFile logFile)

في بعض الحالات، يجب أن يكون السجلّ مرتبطًا بشكل كبير بحالات الاختبار، ولكن لا يمكن إجراء ذلك في معاودة الاتصال المباشرة testLogSaved(String,LogDataType,InputStreamSource,LogFile).

void testLogForward(String dataName, LogDataType dataType, InputStreamSource dataStream)

يجب إعادة توجيه testLog فقط بدلاً من حفظ السجلّ أولاً.

void testLogSaved(String dataName, LogDataType dataType, InputStreamSource dataStream, LogFile logFile)

يتم استدعاء هذه الطريقة عند حفظ سجلّ الاختبار.

طُرق وضع التصميم العامة

ShardMainResultForwarder

public ShardMainResultForwarder (List<ITestInvocationListener> listeners, 
                int expectedShards)

أنشئ ShardMainResultForwarder.

المعلَمات
listeners List: قائمة ITestInvocationListener التي سيتم إعادة توجيه النتائج إليها عند اكتمال جميع الأجزاء

expectedShards int: عدد الأجزاء

الإجراءات العامة

getListeners

public List<ITestInvocationListener> getListeners ()

الحصول على قائمة أدوات معالجة الأحداث

المرتجعات
List<ITestInvocationListener> قائمة ITestInvocationListener

invocationEnded

public void invocationEnded (long elapsedTime)

تعرض هذه السمة ما إذا تم إنهاء عملية الاستدعاء بنجاح أو بسبب حدوث خطأ.

سيتم استدعاؤها تلقائيًا من خلال إطار عمل TradeFederation.

المعلَمات
elapsedTime long: الوقت المنقضي لتنفيذ الاستدعاء بالملّي ثانية

invocationEnded

public void invocationEnded (long elapsedTime, 
                IInvocationContext context)

عملية ردّ أكثر تفصيلاً لتحديد الجزء الذي انتهى.

المعلَمات
elapsedTime long

context IInvocationContext

invocationFailed

public void invocationFailed (FailureDescription failure)

تعرض هذه السمة عملية استدعاء غير مكتملة بسبب حدوث خطأ.

سيتم استدعاؤها تلقائيًا من خلال إطار عمل TradeFederation.

المعلَمات
failure FailureDescription: FailureDescription الذي يصف سبب التعذُّر

invocationFailed

public void invocationFailed (Throwable cause)

تعرض هذه السمة عملية استدعاء غير مكتملة بسبب حدوث خطأ.

سيتم استدعاؤها تلقائيًا من خلال إطار عمل TradeFederation.

المعلَمات
cause Throwable: سبب الخطأ Throwable

invocationSkipped

public void invocationSkipped (SkipReason reason)

تسجيل حالة استدعاء على أنّه تم تخطّيه

المعلَمات
reason SkipReason

invocationStarted

public void invocationStarted (IInvocationContext context)

تسجّل هذه السمة بداية تنفيذ الاختبار.

سيتم استدعاؤها تلقائيًا من خلال إطار عمل TradeFederation. على مقدّمي التقارير إلغاء هذه الطريقة لتفعيل إعداد التقارير على أجهزة متعددة.

المعلَمات
context IInvocationContext: معلومات حول طلب التنفيذ

logAssociation

public void logAssociation (String dataName, 
                LogFile logFile)

في بعض الحالات، يجب أن يكون السجلّ مرتبطًا بشكل كبير بحالات الاختبار، ولكن لا يمكن إجراء ذلك في معاودة الاتصال المباشرة testLogSaved(String,LogDataType,InputStreamSource,LogFile). وبالتالي، يتيح هذا الإجراء الرجعي توفير ارتباط قوي بشكل صريح.

المعلَمات
dataName String: اسم البيانات

logFile LogFile: LogFile الذي تم تسجيله من قبل ويجب ربطه بحالة الاختبار.

testLogForward

public void testLogForward (String dataName, 
                LogDataType dataType, 
                InputStreamSource dataStream)

يجب إعادة توجيه testLog فقط بدلاً من حفظ السجلّ أولاً.

المعلَمات
dataName String

dataType LogDataType

dataStream InputStreamSource

testLogSaved

public void testLogSaved (String dataName, 
                LogDataType dataType, 
                InputStreamSource dataStream, 
                LogFile logFile)

يتم استدعاء هذه الطريقة عند حفظ سجلّ الاختبار.

يجب استخدامها بدلاً من ITestInvocationListener.testLog(String,LogDataType,InputStreamSource).

المعلَمات
dataName String: اسم وصفي String للبيانات، مثل "device_logcat". ملاحظة قد لا يكون dataName فريدًا لكل استدعاء، أي يجب أن يتمكّن المنفّذون من التعامل مع عمليات استدعاء متعددة باستخدام dataName نفسه.

dataType LogDataType: LogDataType الخاص بالبيانات

dataStream InputStreamSource: InputStreamSource الخاص بالبيانات على المنفّذين استدعاء createInputStream لبدء قراءة البيانات، والتأكّد من إغلاق InputStream الناتج عند الانتهاء.

logFile LogFile: LogFile الذي يحتوي على البيانات الوصفية للملف المحفوظ