أداة تجميع تقرير الأخطاء
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)
يمكنك تحديد ما إذا كان يجب جمع تقرير الأخطاء من خلال جمع تقرير الأخطاء في سلسلة محادثات مختلفة
( |
void
|
setDescriptiveName(String name)
اضبط الاسم الوصفي لاستخدامه عند تسجيل تقارير الأخطاء. |
void
|
setDeviceWaitTime(int waitTime)
يُرجى تحديد الوقت (بالثواني) للانتظار حتى يكون الجهاز متصلاً بالإنترنت قبل محاولة تسجيل تقرير خطأ. |
void
|
testAssumptionFailure(TestDescription test, String trace)
يتمّ استدعاؤه عندما يُبلغ اختبار ذري عن أنّه يفترض شرطًا غير صحيح. |
void
|
testEnded(TestDescription test,
يُبلِغ عن نهاية تنفيذ نموذج اختبار فردي. |
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,
الإبلاغ عن نهاية عملية الاختبار |
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 ()
عليك حظرها حتى لا يجمع المجمِّع أي تقارير أخطاء. إذا لم يكن جامع البيانات يجمع تقارير الأخطاء بشكل نشط، يجب الرجوع فورًا.
الحصول على الملخص
public TestSummary getSummary ()
يسمح لـ InvocationListener بإرجاع ملخّص.
المرتجعات | |
---|---|
TestSummary |
علامة TestSummary تلخّص تمرين الجري أو قيمة خالية |
invocationEnded
public void invocationEnded (long elapsedTime)
تُستخدَم لتسجيل انتهاء طلب الاستدعاء، سواءً بنجاح أو بسبب خطأ.
سيتم استدعاؤه تلقائيًا من خلال إطار عمل TradeFederation.
المعلمات | |
---|---|
elapsedTime |
long : الوقت المنقضي منذ بدء الطلب بالملي ثانية |
invocationFailed
public void invocationFailed (Throwable cause)
الإبلاغ عن طلب غير مكتمل بسبب بعض حالات الخطأ
سيتم استدعاؤه تلقائيًا بواسطة إطار عمل الاتحاد التجاري.
المعلمات | |
---|---|
cause |
Throwable : Throwable سبب الخطأ |
invocationStarted
public void invocationStarted (IInvocationContext context)
الإبلاغ عن بدء استدعاء الاختبار
سيتم استدعاؤه تلقائيًا من خلال إطار عمل TradeFederation. على مُرسِلي البلاغات إلغاء هذه الطريقة للسماح بإعداد تقارير عن أجهزة متعددة.
المعلمات | |
---|---|
context |
IInvocationContext : معلومات عن الاستدعاء |
ضبط غير متزامن
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 : تتبُّع تسلسل استدعاء الدوال البرمجية للخطأ |
تم تجاهل الاختبار
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 لبدء قراءة البيانات والتأكّد من إغلاق
InsertStream الناتج عند اكتماله. على المُتصلين التأكّد من بقاء مصدر البيانات
حاضرًا ويمكن الوصول إليه إلى أن تكتمل طريقة testLog. |
اختبار RunEnded
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 : الوقت المنقضي الذي سجّله الجهاز، بالمللي ثانية |
تم بدء الاختبار
public void testStarted (TestDescription test)
الإبلاغ عن بدء حالة اختبار فردية واجهة قديمة، يجب استخدام testStarted(com.android.tradefed.result.TestDescription)
كلما أمكن.
المعلمات | |
---|---|
test |
TestDescription : يحدد الاختبار |