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,
Membuat |
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 |