SubprocessResultsReporter

public class SubprocessResultsReporter
extends Object implements ILogSaverListener, ISupportGranularResults, ITestInvocationListener

java.lang.Object
   ↳ com.android.tradefed.result.SubprocessResultsReporter


تُنفِّذ ITestInvocationListener لتحديدها كـ result_reporter وتعيد توجيه نتائج الاختبارات وعمليات تشغيل الاختبارات وطلبات تشغيل الاختبارات من العملية الفرعية.

ملخّص

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

SubprocessResultsReporter()

الطرق العامة

void close()

TestSummary getSummary()

يسمح لـ InvocationListener بإرجاع ملخّص.

void invocationEnded(long elapsedTime)

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

void invocationFailed(FailureDescription failure)

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

void invocationFailed(Throwable cause)

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

void invocationStarted(IInvocationContext context)

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

void logAssociation(String dataName, LogFile logFile)

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

void printEvent(String key, Object event)

مساعد لطباعة مفتاح الحدث ثم عنصر json

void setOutputTestLog(boolean outputTestLog)

لتحديد ما إذا كان يجب عرض الاختبار المسجَّل أم لا.

boolean supportGranularResults()

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

void testAssumptionFailure(TestDescription testId, String trace)

يتمّ استدعاؤه عندما يُبلغ اختبار ذري عن أنّه يفترض شرطًا غير صحيح.

void testAssumptionFailure(TestDescription testId, FailureDescription failure)

يتمّ استدعاؤه عندما يُبلغ اختبار ذري عن أنّه يفترض شرطًا غير صحيح.

void testEnded(TestDescription testId, long endTime, metrics)

بديل ERROR(/#testEnded(com.android.tradefed.result.TestDescription,Map)) حيث يمكننا تحديد وقت الانتهاء مباشرةً.

void testEnded(TestDescription testId, metrics)

يُبلِغ عن نهاية تنفيذ نموذج اختبار فردي.

void testFailed(TestDescription testId, FailureDescription failure)

الإبلاغ عن تعذُّر اختبار فردي

void testFailed(TestDescription testId, String reason)

الإبلاغ عن تعذُّر اختبار فردي

void testIgnored(TestDescription testId)

يتمّ استدعاؤه عندما لا يتمّ تنفيذ اختبار، وذلك بشكل عام لأنّ طريقة اختبار تمّت إضافة تعليق توضيحي إليها باستخدام علامة ‎@org.junit.Ignore.

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

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

void testModuleEnded()

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

void testModuleStarted(IInvocationContext moduleContext)

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

void testRunEnded(long time, runMetrics)

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

void testRunFailed(FailureDescription failure)

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

void testRunFailed(String reason)

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

void testRunStarted(String runName, int testCount, int attemptNumber)

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

void testRunStarted(String runName, int testCount)

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

void testRunStarted(String runName, int testCount, int attemptNumber, long startTime)

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

void testRunStopped(long arg0)

توقّف تشغيل اختبار التقارير قبل اكتماله بناءً على طلب أحد المستخدِمين.

void testSkipped(TestDescription testId, SkipReason reason)

يتمّ استدعاؤه عند تخطّي اختبار وعدم تنفيذه لسبب غير متوقّع عادةً.

void testStarted(TestDescription testId, long startTime)

بديل عن testStarted(com.android.tradefed.result.TestDescription) حيث نحدّد أيضًا وقت بدء الاختبار ، مع ERROR(/#testEnded(com.android.tradefed.result.TestDescription,long,Map)) لإجراء قياس دقيق.

void testStarted(TestDescription testId)

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

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

SubprocessResultsReporter

public SubprocessResultsReporter ()

الطرق العامة

إغلاق

public void close ()

getSummary

public TestSummary getSummary ()

يسمح لـ InvocationListener بإرجاع ملخّص.

المرتجعات
TestSummary TestSummary تلخيص عملية التنفيذ أو قيمة فارغة

invocationEnded

public void invocationEnded (long elapsedTime)

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

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

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

invocationFailed

public void invocationFailed (FailureDescription failure)

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

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

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

invocationFailed

public void invocationFailed (Throwable cause)

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

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

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

invocationStarted

public void invocationStarted (IInvocationContext context)

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

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

المعلمات
context IInvocationContext: معلومات عن الاستدعاء

logAssociation

public void logAssociation (String dataName, 
                LogFile logFile)

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

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

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

printEvent

public void printEvent (String key, 
                Object event)

مساعد لطباعة مفتاح الحدث ثم عنصر json

المعلمات
key String

event Object

setOutputTestLog

public void setOutputTestLog (boolean outputTestLog)

لتحديد ما إذا كان يجب عرض الاختبار المسجَّل أم لا.

المعلمات
outputTestLog boolean

supportGranularResults

public boolean supportGranularResults ()

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

المرتجعات
boolean

testAssumptionFailure

public void testAssumptionFailure (TestDescription testId, 
                String trace)

يتمّ استدعاؤه عندما يُبلغ اختبار ذري عن أنّه يفترض شرطًا غير صحيح.

المعلمات
testId TestDescription: لتحديد الاختبار

trace String: تتبُّع تسلسل استدعاء الدوال البرمجية للخطأ

testAssumptionFailure

public void testAssumptionFailure (TestDescription testId, 
                FailureDescription failure)

يتمّ استدعاؤه عندما يُبلغ اختبار ذري عن أنّه يفترض شرطًا غير صحيح.

المعلمات
testId TestDescription: لتحديد الاختبار

failure FailureDescription: FailureDescription لوصف الخطأ وسياقه

testEnded

public void testEnded (TestDescription testId, 
                long endTime, 
                 metrics)

بديل ERROR(/#testEnded(com.android.tradefed.result.TestDescription,Map)) حيث يمكننا تحديد وقت الانتهاء مباشرةً. يمكنك الجمع بين testStarted(com.android.tradefed.result.TestDescription, long) لقياس الأداء بدقة.

المعلمات
testId TestDescription: لتحديد الاختبار

endTime long: وقت انتهاء الاختبار، يتم قياسه من خلال System.currentTimeMillis()

metrics : ERROR(/Map) من المقاييس التي تمّ قياسها

testEnded

public void testEnded (TestDescription testId, 
                 metrics)

يُبلِغ عن نهاية تنفيذ نموذج اختبار فردي.

إذا لم يتمّ استدعاء testFailed(TestDescription, FailureDescription)، يعني ذلك أنّ هذا الاختبار قد اجتاز. ويعرض أيضًا أي مقاييس مفتاح/قيمة قد تم إصدارها أثناء تنفيذ نموذج الاختبار.

المعلمات
testId TestDescription: لتحديد الاختبار

metrics : ERROR(/Map) من المقاييس التي تمّ قياسها

testFailed

public void testFailed (TestDescription testId, 
                FailureDescription failure)

الإبلاغ عن تعذُّر اختبار فردي

سيتمّ استدعاؤه بين testStarted وtestEnded.

المعلمات
testId TestDescription: لتحديد الاختبار

failure FailureDescription: FailureDescription لوصف الخطأ وسياقه

testFailed

public void testFailed (TestDescription testId, 
                String reason)

الإبلاغ عن تعذُّر اختبار فردي

سيتمّ استدعاؤه بين testStarted وtestEnded.

المعلمات
testId TestDescription: لتحديد الاختبار

reason String: تتبُّع تسلسل استدعاء الدوال البرمجية للخطأ

testIgnored

public void testIgnored (TestDescription testId)

يتمّ استدعاؤه عندما لا يتمّ تنفيذ اختبار، وذلك بشكل عام لأنّ طريقة اختبار تمّت إضافة تعليق توضيحي إليها باستخدام علامة ‎@org.junit.Ignore.

المعلمات
testId TestDescription: لتحديد الاختبار

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.

testModuleEnded

public void testModuleEnded ()

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

testModuleStarted

public void testModuleStarted (IInvocationContext moduleContext)

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

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

testRunEnded

public void testRunEnded (long time, 
                 runMetrics)

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

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

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

testRunFailed

public void testRunFailed (FailureDescription failure)

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

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

testRunFailed

public void testRunFailed (String reason)

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

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

testRunStarted

public void testRunStarted (String runName, 
                int testCount, 
                int attemptNumber)

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

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

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

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

testRunStarted

public void testRunStarted (String runName, 
                int testCount)

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

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

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

testRunStarted

public void testRunStarted (String runName, 
                int testCount, 
                int attemptNumber, 
                long startTime)

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

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

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

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

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

testRunStopped

public void testRunStopped (long arg0)

توقّف تشغيل اختبار التقارير قبل اكتماله بناءً على طلب أحد المستخدِمين.

TODO: currently unused, consider removing

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

testSkipped

public void testSkipped (TestDescription testId, 
                SkipReason reason)

يتمّ استدعاؤه عند تخطّي اختبار وعدم تنفيذه لسبب غير متوقّع عادةً. سيتمّ إعادة إجراء هذه الاختبارات لمحاولة الحصول على تنفيذ سليم.

المعلمات
testId TestDescription: لتحديد الاختبار

reason SkipReason: SkipReason

testStarted

public void testStarted (TestDescription testId, 
                long startTime)

بديل عن testStarted(com.android.tradefed.result.TestDescription) حيث نحدّد أيضًا وقت بدء الاختبار ، مع ERROR(/#testEnded(com.android.tradefed.result.TestDescription,long,Map)) لإجراء قياس دقيق.

المعلمات
testId TestDescription: لتحديد الاختبار

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

testStarted

public void testStarted (TestDescription testId)

الإبلاغ عن بدء حالة اختبار فردية واجهة قديمة، يجب استخدام testStarted(com.android.tradefed.result.TestDescription) كلما أمكن.

المعلمات
testId TestDescription: لتحديد الاختبار