ShardListener

public class ShardListener
extends CollectingTestListener implements ISupportGranularResults

java.lang.Object
   ↳ com.android.tradefed.result.CollectingTestListener
  com.android.tradefed.invoker.ShardListener


ITestInvocationListener يجمع النتائج من جزء طلب (يُعرف أيضًا باسم تقسيم طلب لتشغيله على موارد متعددة بشكل متزامن)، ويعيد توجيهها إلى مستمع آخر

ملخّص

وظائف الإنشاء العامة

ShardListener(ITestInvocationListener main)

إنشاء ShardListener

الطرق العامة

getUnderlyingResultReporter()
void invocationEnded(long elapsedTime)

تُستخدَم لتسجيل انتهاء طلب الاستدعاء، سواءً بنجاح أو بسبب خطأ.

void invocationFailed(FailureDescription failure)

الإبلاغ عن طلب غير مكتمل بسبب بعض حالات الخطأ

void invocationFailed(Throwable cause)

تُبلغ عن استدعاء غير مكتمل بسبب خطأ ما.

void invocationSkipped(SkipReason reason)

الإبلاغ عن طلب استدعاء كطلب تم تخطّيه

void invocationStarted(IInvocationContext context)

الإبلاغ عن بدء استدعاء الاختبار

void logAssociation(String dataName, LogFile logFile)

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

void setSupportGranularResults(boolean enableGranularResults)
boolean supportGranularResults()

تعرِض True إذا كان مقدّم البلاغ يتيح النتائج الدقيقة، وFalse في الحالات الأخرى.

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

يتم توفير السجلّ المرتبط أو بيانات تصحيح الأخطاء من استدعاء الاختبار.

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

void testModuleEnded()

تقدم تقريرًا بنهاية تشغيل وحدة.

void testModuleStarted(IInvocationContext moduleContext)

الإبلاغ عن بدء تشغيل وحدة

void testRunEnded(long elapsedTime, runMetrics)

نهاية تشغيل اختبار التقارير

void testRunFailed(FailureDescription failure)

تعذّر إكمال تشغيل اختبار التقارير بسبب خطأ وصفه FailureDescription.

void testRunFailed(String failureMessage)

تعذّر إكمال عملية اختبار التقارير بسبب خطأ فادح.

void testRunStarted(String name, int numTests, int attemptNumber, long startTime)

الإبلاغ عن بدء عملية تنفيذ اختبار

وظائف الإنشاء العامة

ShardListener

public ShardListener (ITestInvocationListener main)

إنشاء ShardListener

المعلمات
main ITestInvocationListener: ITestInvocationListener يجب إعادة توجيه النتائج. لمنع حدوث تعارضات مع ShardListener أخرى، سيتم مزامنة هذا العنصر على main عند إعادة توجيه النتائج. ولن يتم إرسال النتائج إلا بعد اكتمال شريحة الطلب.

الطرق العامة

getUnderlyingResultReporter

public  getUnderlyingResultReporter ()

المرتجعات

invocationEnded

public void invocationEnded (long elapsedTime)

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

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

المعلمات
elapsedTime long: الوقت المنقضي منذ بدء الطلب بالملي ثانية

تعذّر الاستدعاء

public void invocationFailed (FailureDescription failure)

تُبلغ عن استدعاء غير مكتمل بسبب خطأ ما.

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

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

invocationFailed

public void invocationFailed (Throwable cause)

الإبلاغ عن طلب غير مكتمل بسبب بعض حالات الخطأ

سيتم استدعاؤه تلقائيًا بواسطة إطار عمل الاتحاد التجاري.

المعلمات
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)

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

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

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

setSupportGranularResults

public void setSupportGranularResults (boolean enableGranularResults)

المعلمات
enableGranularResults boolean

supportGranularResults

public boolean supportGranularResults ()

عرض "صحيح" إذا كان المبلِّغ يدعم النتائج الدقيقة، أو يعرض "خطأ" في الحالات الأخرى.

المرتجعات
boolean

testLog

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

يتم توفير السجلّ المرتبط أو بيانات تصحيح الأخطاء من استدعاء الاختبار.

يجب الاتصال قبل ERROR(/ITestInvocationListener#invocationFailed(Throwable)) أو ERROR(/ITestInvocationListener#invocationEnded(long))

سيستدعي إطار عمل TradeFederation هذه الطريقة تلقائيًا، ما يؤدي إلى توفير سجلّ المضيف وlogcat للجهاز، إن أمكن.

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

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

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

testLogSaved

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

المعلمات
dataName String

dataType LogDataType

dataStream InputStreamSource

logFile LogFile

testModuleEnded

public void testModuleEnded ()

الإبلاغ عن نهاية تشغيل وحدة

testModuleStarted

public void testModuleStarted (IInvocationContext moduleContext)

الإبلاغ عن بدء تشغيل وحدة يرتبط هذا المرجع الداعم بـ testModuleEnded() وهو اختياري في التسلسل. ولا يتم استخدامه إلا أثناء عملية تشغيل تستخدِم وحدات: برامج التشغيل المستندة إلى المجموعة.

المعلمات
moduleContext IInvocationContext: IInvocationContext الوحدة

testRunEnded

public void testRunEnded (long elapsedTime, 
                 runMetrics)

الإبلاغ عن نهاية عملية الاختبار

المعلمات
elapsedTime long: الوقت المنقضي الذي سجّله الجهاز، بالمللي ثانية

runMetrics : يتم الإبلاغ عن أزواج المفتاح/القيمة في نهاية عملية اختبار

testRunFailed

public void testRunFailed (FailureDescription failure)

تعذّر إكمال تشغيل اختبار التقارير بسبب خطأ وصفه FailureDescription.

المعلمات
failure FailureDescription: FailureDescription يصف الخطأ وسياقه.

testRunFailed

public void testRunFailed (String failureMessage)

تعذّر إكمال تشغيل اختبار التقارير بسبب خطأ فادح.

المعلمات
failureMessage String: String يوضّح سبب تعذُّر التنفيذ

أمر testRunStarted

public void testRunStarted (String name, 
                int numTests, 
                int attemptNumber, 
                long startTime)

الإبلاغ عن بدء عملية تنفيذ اختبار

المعلمات
name String: اسم اختبار التنفيذ

numTests int: إجمالي عدد الاختبارات في اختبار التنفيذ

attemptNumber int: رقم الطلب الذي يحدّد المحاولات المختلفة لـ runName نفسها التي يتم تنفيذها عدة مرات. يتمّ ترقيم مَعلمة attemptNumber بدءًا من 0، ويجب أن تزيد في كلّ مرّة يتمّ فيها تنفيذ عملية تشغيل جديدة. على سبيل المثال، إذا تمّت إعادة محاولة إجراء اختبار دقيق 3 مرّات، يجب أن يكون إجمالي عمليات التشغيل التي تمّ إجراؤها 4 مرّات ضمن اسم التشغيل نفسه، ويجب أن تتراوح مَعلمة attemptNumber بين 0 و3.

startTime long: وقت بدء التنفيذ، يتم قياسه من خلال System.currentTimeMillis()