InstrumentationProtoResultParser

public class InstrumentationProtoResultParser
extends Object implements IInstrumentationResultParser

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


Mengurai hasil 'protoStd output mode' dari pengujian instrumentasi yang dijalankan dari shell dan memberi tahu ITestRunListener tentang hasilnya.

Perintah am instrument dengan opsi "-m" menghasilkan status eksekusi pengujian dalam format protobuf biner secara bertahap. Pesan protobuf output adalah InstrumentationData.Session, yang memiliki dua kolom: 1) kolom berulang InstrumentationData.TestStatus, 2) InstrumentationData.SessionStatus. Perintah instrumen am menghasilkan pesan status pengujian sebelum/setelah setiap eksekusi pengujian. addOutput(byte, int, int) dipanggil dengan argumen data yang merupakan byte serialisasi TestStatus. Setelah semua pengujian selesai, perintah akan menghasilkan SessionStatus.

Lihat https://cs.android.com/android/platform/superproject/+/master:frameworks/base/cmds/am/proto/instrumentation_data.proto untuk mengetahui definisi protobuf lengkap.

InstrumentationProtoResultParser adalah mesin status dan status ditentukan di ERROR(InstrumentationProtoResultParserState/com.android.tradefed.result.ddmlib.InstrumentationProtoResultParser.InstrumentationProtoResultParserState InstrumentationProtoResultParserState). Status dimulai dengan ERROR(/com.android.tradefed.result.ddmlib.InstrumentationProtoResultParser.InstrumentationProtoResultParserState#NOT_STARTED). Saat melihat status kasus pengujian pertama, status tersebut akan berpindah ke ERROR(InstrumentationProtoResultParserState.RUNNING/com.android.tradefed.result.ddmlib.InstrumentationProtoResultParser.InstrumentationProtoResultParserState#RUNNING InstrumentationProtoResultParserState.RUNNING). Status berubah menjadi ERROR(/com.android.tradefed.result.ddmlib.InstrumentationProtoResultParser.InstrumentationProtoResultParserState#FINISHED) jika semua pengujian selesai atau ERROR(/com.android.tradefed.result.ddmlib.InstrumentationProtoResultParser.InstrumentationProtoResultParserState#CANCELLED) jika diminta dengan memanggil cancel().

Setiap kali status pengujian baru tersedia, status tersebut akan diberitahukan kepada pemroses yang terdaftar.

Ringkasan

Konstruktor publik

InstrumentationProtoResultParser(String runName, listeners)

Membuat InstrumentationProtoResultParser.

Metode publik

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

Metode ini dipanggil setiap kali beberapa data baru tersedia.

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

Konstruktor publik

InstrumentationProtoResultParser

public InstrumentationProtoResultParser (String runName, 
                 listeners)

Membuat InstrumentationProtoResultParser.

Parameter
runName String: nama operasi pengujian yang akan diberikan ke ITestRunListener.testRunStarted

listeners : diberi tahu tentang hasil pengujian saat pengujian dijalankan

Metode publik

addOutput

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

Metode ini dipanggil setiap kali beberapa data baru tersedia.

Parameter
data byte: data serialisasi pesan InstrumentationData.Session. Jika data adalah bagian yang tidak lengkap, bagian tersebut akan ditambahkan ke buffer internal dan akan diproses dalam panggilan addOutput(byte, int, int) berikutnya.

offset int: offset data baru yang disimpan di data

length int: byte data baru di data yang akan diproses.

batal

public void cancel ()

flush

public void flush ()

handleTestRunFailed

public void handleTestRunFailed (String errorMsg)

Parameter
errorMsg String

isCancelled

public boolean isCancelled ()

Hasil
boolean