BugreportCollector

public class BugreportCollector
extends Object implements ITestInvocationListener

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


ITestInvocationListener للمرور بدون معالجة تجمع تقارير الأخطاء عند حدوث أحداث قابلة للضبط ، ثم تستدعي ITestInvocationListener.testLog في عناصرها الفرعية بعد جمع كل تقرير أخطاء.

السلوكيات: (FIXME: finish this)

  • تسجيل البيانات بعد كل اختبار في حال تعذّر إكمال أي اختبارات
  • الالتقاط بعد كل اختبار
  • الالتقاط بعد كل نموذج اختبار تعذّر إكماله
  • تصوير القصة

ملخّص

الفئات المُدمجة

class BugreportCollector.Predicate

عبارة تحديد كاملة تصف حالات إنشاء تقرير أخطاء. 

interface BugreportCollector.SubPredicate

 

الحقول

public static final BugreportCollector.Predicate AFTER_FAILED_TESTCASES

عبارة شرطية محدّدة مسبقًا يتم تفعيلها بعد كل حالة تجريبية تنتهي بالفشل

public static final BugreportCollector.Predicate AT_START

عبارة شرطية محدّدة مسبقًا يتم تفعيلها عند بدء الطلب الأول

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

BugreportCollector(ITestInvocationListener listener, ITestDevice testDevice)

الطرق العامة

void addPredicate(BugreportCollector.Predicate p)
void blockUntilIdle()

يمكنك حظر التطبيق إلى أن يتوقف عن جمع أي تقارير أخطاء.

TestSummary getSummary()

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

void invocationEnded(long elapsedTime)

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

void invocationFailed(Throwable cause)

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

void invocationStarted(IInvocationContext context)

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

void setAsynchronous(boolean asynchronous)

حدِّد ما إذا كان يجب أن تجمع ميزة جمع تقارير الأخطاء تقرير الخطأ في سلسلة محادثات مختلفة (asynchronous = true)، أو أن تحظر المتصل إلى أن يتم تسجيل تقرير الخطأ (asynchronous = false).

void setDescriptiveName(String name)

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

void setDeviceWaitTime(int waitTime)

يمكنك ضبط الوقت (بالثواني) للانتظار إلى أن يصبح الجهاز متصلاً بالإنترنت قبل محاولة تسجيل تقرير خطأ.

void testAssumptionFailure(TestDescription test, String trace)

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

void testEnded(TestDescription test, testMetrics)

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

void testFailed(TestDescription test, String trace)

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

void testIgnored(TestDescription test)

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

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

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

void testRunEnded(long elapsedTime, runMetrics)

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

void testRunFailed(String errorMessage)

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

void testRunStarted(String runName, int testCount)

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

void testRunStopped(long elapsedTime)

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

void testStarted(TestDescription test)

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

الحقول

AFTER_FAILED_TESTCASES

public static final BugreportCollector.Predicate AFTER_FAILED_TESTCASES

عبارة شرطية محدّدة مسبقًا يتم تفعيلها بعد كل حالة تجريبية تنتهي بالفشل

AT_START

public static final BugreportCollector.Predicate AT_START

عبارة شرطية محدّدة مسبقًا يتم تفعيلها عند بدء الطلب الأول

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

BugreportCollector

public BugreportCollector (ITestInvocationListener listener, 
                ITestDevice testDevice)

المعلمات
listener ITestInvocationListener

testDevice ITestDevice

الطرق العامة

addPredicate

public void addPredicate (BugreportCollector.Predicate p)

المعلمات
p BugreportCollector.Predicate

blockUntilIdle

public void blockUntilIdle ()

يمكنك حظر التطبيق إلى أن يتوقف عن جمع أي تقارير أخطاء. إذا لم يكن جامع البيانات يجمع تقارير الأخطاء بشكل نشط، يجب الرجوع فورًا.

getSummary

public TestSummary getSummary ()

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

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

invocationEnded

public void invocationEnded (long elapsedTime)

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

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

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

invocationFailed

public void invocationFailed (Throwable cause)

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

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

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

invocationStarted

public void invocationStarted (IInvocationContext context)

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

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

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

setAsynchronous

public void setAsynchronous (boolean asynchronous)

حدِّد ما إذا كان يجب أن تجمع ميزة جمع تقارير الأخطاء تقرير الخطأ في سلسلة محادثات مختلفة (asynchronous = true)، أو أن تحظر المتصل إلى أن يتم تسجيل تقرير الخطأ (asynchronous = false).

المعلمات
asynchronous boolean

setDescriptiveName

public void setDescriptiveName (String name)

اضبط الاسم الوصفي لاستخدامه عند تسجيل تقارير الأخطاء. إذا كان null، BugreportCollector سيعود إلى السلوك التلقائي لتسلسل اسم الحدث الذي أدّى إلى جمع تقرير الخطأ.

المعلمات
name String

setDeviceWaitTime

public void setDeviceWaitTime (int waitTime)

يمكنك ضبط الوقت (بالثواني) للانتظار إلى أن يصبح الجهاز متصلاً بالإنترنت قبل محاولة تسجيل تقرير خطأ. إذا كانت القيمة سالبة، لن يتم إجراء أي عملية تحقّق. سيتم تسجيل أي DeviceNotAvailableException يتم العثور عليه أثناء عملية التحقّق هذه وستتم تجاهله.

المعلمات
waitTime int

testAssumptionFailure

public void testAssumptionFailure (TestDescription test, 
                String trace)

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

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

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

testEnded

public void testEnded (TestDescription test, 
                 testMetrics)

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

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

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

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

testFailed

public void testFailed (TestDescription test, 
                String trace)

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

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

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

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

testIgnored

public void testIgnored (TestDescription test)

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

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

testRunEnded

public void testRunEnded (long elapsedTime, 
                 runMetrics)

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

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

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

testRunFailed

public void testRunFailed (String errorMessage)

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

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

testRunStarted

public void testRunStarted (String runName, 
                int testCount)

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

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

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

testRunStopped

public void testRunStopped (long elapsedTime)

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

TODO: currently unused, consider removing

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

testStarted

public void testStarted (TestDescription test)

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

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