InstrumentationProtoResultParser

public class InstrumentationProtoResultParser
extends Object implements IInstrumentationResultParser

java.lang.Object
   ↳ com.android.tradefed.result.ddmlib.InstrumentationProtoResultParser


تُحلِّل نتائج "وضع إخراج protoStd" لاختبار أداة القياس الذي يتم تشغيله من shell، وتُعلم klassen.ITestRunListener بالنتائج.

يعرض أمر Am instrument مع الخيار "-m" حالة تنفيذ الاختبار بتنسيق protobuf ثنائي بشكل تدريجي. رسالة protobuf الناتجة هي InstrumentationData.Session، التي تحتوي على حقلَين: 1) حقل متكرّر من InstrumentationData.TestStatus، 2) InstrumentationData.SessionStatus. يعرض الأمر am instrument رسالة حالة الاختبار قبل/بعد تنفيذ كل اختبار. يتم استدعاء addOutput(byte, int, int) باستخدام وسيطة data وهي بايت متسلسل من TestStatus. عند الانتهاء من جميع الاختبارات، يُخرج الأمر SessionStatus أخيرًا.

اطّلِع على https://cs.android.com/android/platform/superproject/+/master:frameworks/base/cmds/am/proto/instrumentation_data.proto للحصول على تعريف كامل لـ protobuf.

InstrumentationProtoResultParser هي آلة حالات ويتم تحديد الحالات في ERROR(InstrumentationProtoResultParserState/com.android.tradefed.result.ddmlib.InstrumentationProtoResultParser.InstrumentationProtoResultParserState InstrumentationProtoResultParserState). تبدأ الحالة بـ ERROR(/com.android.tradefed.result.ddmlib.InstrumentationProtoResultParser.InstrumentationProtoResultParserState#NOT_STARTED). عندما يرصد حالة أول حالة اختبار، ينتقل إلى ERROR(InstrumentationProtoResultParserState.RUNNING/com.android.tradefed.result.ddmlib.InstrumentationProtoResultParser.InstrumentationProtoResultParserState#RUNNING InstrumentationProtoResultParserState.RUNNING). تتغيّر الحالة إلى ERROR(/com.android.tradefed.result.ddmlib.InstrumentationProtoResultParser.InstrumentationProtoResultParserState#FINISHED) إذا تم إجراء جميع الاختبارات أو ERROR(/com.android.tradefed.result.ddmlib.InstrumentationProtoResultParser.InstrumentationProtoResultParserState#CANCELLED) إذا تم طلبها من خلال الاتصال بالرقم cancel().

في كل مرة تتوفّر فيها حالة اختبار جديدة، سيتم إبلاغ المستمعين المسجّلين بها.

ملخّص

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

InstrumentationProtoResultParser(String runName, listeners)

ينشئ InstrumentationProtoResultParser.

الطرق العامة

void addOutput(byte[] data, int offset, int length)

يتمّ استدعاء هذه الطريقة في كلّ مرّة تتوفّر فيها بعض البيانات الجديدة.

void cancel()
void flush()
void handleTestRunFailed(String errorMsg)
boolean isCancelled()

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

InstrumentationProtoResultParser

public InstrumentationProtoResultParser (String runName, 
                 listeners)

ينشئ InstrumentationProtoResultParser.

المعلمات
runName String: اسم عملية الاختبار المطلوب تقديمه إلى ITestRunListener.testRunStarted

listeners : يتم إعلامك بنتائج الاختبار أثناء تنفيذه

الطرق العامة

addOutput

public void addOutput (byte[] data, 
                int offset, 
                int length)

يتمّ استدعاء هذه الطريقة في كلّ مرّة تتوفّر فيها بعض البيانات الجديدة.

المعلمات
data byte: بيانات مُسلسلة لرسالة InstrumentationData.Session إذا كان data عبارة عن قطعة غير مكتملة، تتم إضافتها إلى ذاكرة تخزين مؤقت داخلية وسيتم معالجتها في طلب addOutput(byte, int, int) التالي.

offset int: عنصر تمويه للبيانات الجديدة المخزّنة في data

length int: بايت من بيانات جديدة في data ليتمّت معالجتها.

إلغاء

public void cancel ()

flush

public void flush ()

handleTestRunFailed

public void handleTestRunFailed (String errorMsg)

المعلمات
errorMsg String

isCancelled

public boolean isCancelled ()

المرتجعات
boolean