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)
اضبط ما إذا كان يجب أن يتم جمع تقرير الأخطاء في سلسلة محادثات مختلفة
( |
void
|
setDescriptiveName(String name)
اضبط الاسم الوصفي الذي سيتم استخدامه عند تسجيل تقارير الأخطاء. |
void
|
setDeviceWaitTime(int waitTime)
اضبط الوقت (بالثواني) الذي يجب انتظاره إلى أن يصبح الجهاز متصلاً بالإنترنت قبل محاولة تسجيل تقرير خطأ. |
void
|
testAssumptionFailure(TestDescription test, String trace)
يتم استدعاؤه عندما يشير اختبار ذري إلى أنّه يفترض شرطًا غير صحيح |
void
|
testEnded(TestDescription test, HashMap<String, MetricMeasurement.Metric> 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, HashMap<String, MetricMeasurement.Metric> 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, HashMap<String, MetricMeasurement.Metric> testMetrics)
تسجّل هذه السمة نهاية تنفيذ حالة اختبار فردية.
إذا لم يتم استدعاء testFailed(TestDescription, FailureDescription)، اجتازت هذه الحالة الاختبار. تعرض هذه السمة أيضًا أي مقاييس على شكل مفتاح/قيمة
ربما تم إصدارها أثناء تنفيذ حالة الاختبار.
| المعلَمات | |
|---|---|
test |
TestDescription: تحدّد الاختبار |
testMetrics |
HashMap: 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)/ITestInvocationListener#invocationFailed(java.lang.Throwable) 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,
HashMap<String, MetricMeasurement.Metric> runMetrics)تقارير نهاية عملية الاختبار FIXME: We cannot have two Map<> interfaces with different type, so we have to use HashMap here.
| المعلَمات | |
|---|---|
elapsedTime |
long: الوقت المنقضي الذي أبلغ عنه الجهاز، بالمللي ثانية |
runMetrics |
HashMap: أزواج المفتاح/القيمة التي يتمّ تسجيلها في نهاية عملية الاختبار باستخدام Metric. |
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(TestDescription) كلما أمكن ذلك.
| المعلَمات | |
|---|---|
test |
TestDescription: تحدّد الاختبار |