ResultDBReporter
public
class
ResultDBReporter
extends Object
implements
IConfigurationReceiver,
ILogSaverListener,
ISupportGranularResults,
ITestSummaryListener
| java.lang.Object | |
| ↳ | com.android.tradefed.result.resultdb.ResultDBReporter |
Pelapor hasil yang mengupload hasil pengujian ke ResultDB.
Ringkasan
Kolom | |
|---|---|
protected
IInvocationContext |
mContext
|
protected
boolean |
mEnableAlTestProperties
|
Konstruktor publik | |
|---|---|
ResultDBReporter()
|
|
Metode publik | |
|---|---|
TestSummary
|
getSummary()
Memungkinkan InvocationListener menampilkan ringkasan. |
void
|
invocationEnded(long elapsedTime)
Melaporkan bahwa pemanggilan telah dihentikan, baik berhasil maupun karena kondisi error tertentu. |
void
|
invocationFailed(FailureDescription failure)
Melaporkan pemanggilan yang tidak lengkap karena kondisi error tertentu. |
void
|
invocationFailed(Throwable cause)
Melaporkan pemanggilan yang tidak lengkap karena kondisi error tertentu. |
void
|
invocationSkipped(SkipReason reason)
Melaporkan pemanggilan sebagai dilewati |
void
|
invocationStarted(IInvocationContext context)
Melaporkan dimulainya pemanggilan pengujian. |
boolean
|
isDisabled()
|
void
|
logAssociation(String dataName, LogFile logFile)
Dalam beberapa kasus, log harus dikaitkan secara kuat dengan kasus pengujian, tetapi peluang untuk melakukannya pada callback |
void
|
setConfiguration(IConfiguration configuration)
Menyisipkan |
void
|
setLogSaver(ILogSaver logSaver)
Tetapkan |
boolean
|
supportGranularResults()
Menampilkan Benar jika pelapor mendukung hasil terperinci, salah jika tidak. |
void
|
testAssumptionFailure(TestDescription test, String trace)
Dipanggil saat pengujian atomik menandai bahwa pengujian tersebut mengasumsikan kondisi yang salah (false) |
void
|
testAssumptionFailure(TestDescription test, FailureDescription failure)
Dipanggil saat pengujian atomik menandai bahwa pengujian tersebut mengasumsikan kondisi yang salah (false) |
void
|
testEnded(TestDescription test, long endTime, HashMap<String, MetricMeasurement.Metric> testMetrics)
Alternatif untuk |
void
|
testEnded(TestDescription test, HashMap<String, MetricMeasurement.Metric> testMetrics)
Melaporkan akhir eksekusi kasus pengujian individu. |
void
|
testFailed(TestDescription test, FailureDescription failure)
Melaporkan kegagalan kasus pengujian individu. |
void
|
testFailed(TestDescription test, String trace)
Melaporkan kegagalan kasus pengujian individu. |
void
|
testIgnored(TestDescription test)
Dipanggil saat pengujian tidak akan dijalankan, biasanya karena metode pengujian dianotasi dengan org.junit.Ignore. |
void
|
testLog(String dataName, LogDataType dataType, InputStreamSource dataStream)
Menyediakan data log atau debug terkait dari pemanggilan pengujian. |
void
|
testModuleEnded()
Melaporkan akhir proses modul. |
void
|
testModuleStarted(IInvocationContext moduleContext)
Melaporkan awal modul yang berjalan. |
void
|
testRunEnded(long elapsedTimeMillis, HashMap<String, MetricMeasurement.Metric> runMetrics)
Melaporkan akhir eksekusi pengujian. |
void
|
testRunFailed(FailureDescription failure)
Operasi pengujian laporan gagal diselesaikan karena kegagalan yang dijelaskan oleh |
void
|
testRunFailed(String errorMessage)
Uji coba laporan gagal diselesaikan karena terjadi error fatal. |
void
|
testRunStarted(String runName, int testCount, int attemptNumber)
Melaporkan dimulainya proses pengujian. |
void
|
testRunStarted(String runName, int testCount)
Melaporkan dimulainya proses pengujian. |
void
|
testRunStarted(String runName, int testCount, int attemptNumber, long startTime)
Melaporkan dimulainya proses pengujian. |
void
|
testRunStopped(long elapsedTime)
Uji coba laporan dihentikan sebelum selesai karena permintaan pengguna. |
void
|
testSkipped(TestDescription test, SkipReason reason)
Dipanggil saat pengujian dilewati dan tidak dijalankan karena alasan yang biasanya tidak diharapkan. |
void
|
testStarted(TestDescription test, long startTime)
Alternatif untuk |
void
|
testStarted(TestDescription test)
Melaporkan dimulainya kasus pengujian individu. |
void
|
uploadStoragePath(String resourceId, String storagePath, LogFile logFile)
Mengupload jalur penyimpanan artefak pengujian AnTS ke ResultDB. |
Kolom
mEnableAlTestProperties
protected boolean mEnableAlTestProperties
Konstruktor publik
ResultDBReporter
public ResultDBReporter ()
Metode publik
getSummary
public TestSummary getSummary ()
Memungkinkan InvocationListener menampilkan ringkasan.
| Hasil | |
|---|---|
TestSummary |
TestSummary yang meringkas proses, atau null |
invocationEnded
public void invocationEnded (long elapsedTime)
Melaporkan bahwa pemanggilan telah dihentikan, baik berhasil maupun karena kondisi error tertentu.
Akan dipanggil secara otomatis oleh framework TradeFederation.
| Parameter | |
|---|---|
elapsedTime |
long: waktu yang berlalu dari pemanggilan dalam md |
invocationFailed
public void invocationFailed (FailureDescription failure)
Melaporkan pemanggilan yang tidak lengkap karena kondisi error tertentu.
Akan dipanggil secara otomatis oleh framework TradeFederation.
| Parameter | |
|---|---|
failure |
FailureDescription: FailureDescription yang menjelaskan penyebab kegagalan |
invocationFailed
public void invocationFailed (Throwable cause)
Melaporkan pemanggilan yang tidak lengkap karena kondisi error tertentu.
Akan dipanggil secara otomatis oleh framework TradeFederation.
| Parameter | |
|---|---|
cause |
Throwable: penyebab kegagalan Throwable |
invocationSkipped
public void invocationSkipped (SkipReason reason)
Melaporkan pemanggilan sebagai dilewati
| Parameter | |
|---|---|
reason |
SkipReason |
invocationStarted
public void invocationStarted (IInvocationContext context)
Melaporkan dimulainya pemanggilan pengujian.
Akan dipanggil secara otomatis oleh framework TradeFederation. Pelapor perlu mengganti metode ini untuk mendukung pelaporan dari beberapa perangkat.
| Parameter | |
|---|---|
context |
IInvocationContext: informasi tentang pemanggilan |
isDisabled
public boolean isDisabled ()
| Hasil | |
|---|---|
boolean |
|
logAssociation
public void logAssociation (String dataName,
LogFile logFile)Dalam beberapa kasus, log harus dikaitkan secara kuat dengan kasus pengujian, tetapi peluang untuk melakukannya pada callback testLogSaved(String,LogDataType,InputStreamSource,LogFile) langsung tidak memungkinkan. Dengan demikian, callback ini memungkinkan untuk memberikan asosiasi yang kuat secara eksplisit.
| Parameter | |
|---|---|
dataName |
String: Nama data |
logFile |
LogFile: LogFile yang dicatat sebelumnya dan harus dikaitkan dengan
kasus pengujian. |
setConfiguration
public void setConfiguration (IConfiguration configuration)
Menyisipkan IConfiguration yang sedang digunakan.
| Parameter | |
|---|---|
configuration |
IConfiguration |
setLogSaver
public void setLogSaver (ILogSaver logSaver)
Tetapkan ILogSaver untuk mengizinkan pelaksana menyimpan file.
| Parameter | |
|---|---|
logSaver |
ILogSaver: ILogSaver |
supportGranularResults
public boolean supportGranularResults ()
Menampilkan Benar jika pelapor mendukung hasil terperinci, salah jika tidak.
| Hasil | |
|---|---|
boolean |
|
testAssumptionFailure
public void testAssumptionFailure (TestDescription test, String trace)
Dipanggil saat pengujian atomik menandai bahwa pengujian tersebut mengasumsikan kondisi yang salah (false)
| Parameter | |
|---|---|
test |
TestDescription: mengidentifikasi pengujian |
trace |
String: stack trace kegagalan |
testAssumptionFailure
public void testAssumptionFailure (TestDescription test, FailureDescription failure)
Dipanggil saat pengujian atomik menandai bahwa pengujian tersebut mengasumsikan kondisi yang salah (false)
| Parameter | |
|---|---|
test |
TestDescription: mengidentifikasi pengujian |
failure |
FailureDescription: FailureDescription yang menjelaskan kegagalan dan konteksnya. |
testEnded
public void testEnded (TestDescription test, long endTime, HashMap<String, MetricMeasurement.Metric> testMetrics)
Alternatif untuk testEnded(TestDescription,Map) tempat kita dapat menentukan waktu berakhir
secara langsung. Gabungkan dengan testStarted(TestDescription,long) untuk pengukuran yang akurat.
| Parameter | |
|---|---|
test |
TestDescription: mengidentifikasi pengujian |
endTime |
long: waktu berakhirnya pengujian, diukur melalui System.currentTimeMillis() |
testMetrics |
HashMap: Map metrik yang dikeluarkan |
testEnded
public void testEnded (TestDescription test, HashMap<String, MetricMeasurement.Metric> testMetrics)
Melaporkan akhir eksekusi kasus pengujian individu.
Jika testFailed(TestDescription, FailureDescription) tidak dipanggil, pengujian ini lulus. Juga menampilkan metrik kunci/nilai yang mungkin telah dikeluarkan selama eksekusi kasus pengujian.
| Parameter | |
|---|---|
test |
TestDescription: mengidentifikasi pengujian |
testMetrics |
HashMap: Map metrik yang dikeluarkan |
testFailed
public void testFailed (TestDescription test, FailureDescription failure)
Melaporkan kegagalan kasus pengujian individu.
Akan dipanggil antara testStarted dan testEnded.
| Parameter | |
|---|---|
test |
TestDescription: mengidentifikasi pengujian |
failure |
FailureDescription: FailureDescription yang menjelaskan kegagalan dan konteksnya. |
testFailed
public void testFailed (TestDescription test, String trace)
Melaporkan kegagalan kasus pengujian individu.
Akan dipanggil antara testStarted dan testEnded.
| Parameter | |
|---|---|
test |
TestDescription: mengidentifikasi pengujian |
trace |
String: stack trace kegagalan |
testIgnored
public void testIgnored (TestDescription test)
Dipanggil saat pengujian tidak akan dijalankan, biasanya karena metode pengujian dianotasi dengan org.junit.Ignore.
| Parameter | |
|---|---|
test |
TestDescription: mengidentifikasi pengujian |
testLog
public void testLog (String dataName,
LogDataType dataType,
InputStreamSource dataStream)Menyediakan data log atau debug terkait dari pemanggilan pengujian.
Harus dipanggil sebelum ERROR(ITestInvocationListener.invocationFailed(Throwable)/ITestInvocationListener#invocationFailed(java.lang.Throwable) ITestInvocationListener.invocationFailed(Throwable)) atau
ERROR(/ITestInvocationListener#invocationEnded(long))
Framework TradeFederation akan otomatis memanggil metode ini, yang menyediakan log host dan jika berlaku, logcat perangkat.
| Parameter | |
|---|---|
dataName |
String: nama deskriptif String data. Misalnya, "device_logcat". Catatan
dataName mungkin tidak unik per pemanggilan. Artinya, pelaksana harus dapat menangani
beberapa panggilan dengan dataName yang sama |
dataType |
LogDataType: LogDataType data |
dataStream |
InputStreamSource: InputStreamSource data. Pelaksana harus memanggil
createInputStream untuk mulai membaca data, dan memastikan untuk menutup
InputStream yang dihasilkan setelah selesai. Pemanggil harus memastikan sumber data tetap ada dan dapat diakses hingga metode testLog selesai. |
testModuleEnded
public void testModuleEnded ()
Melaporkan akhir proses modul.
testModuleStarted
public void testModuleStarted (IInvocationContext moduleContext)
Melaporkan awal modul yang berjalan. Callback ini terkait dengan testModuleEnded() dan bersifat opsional dalam urutan. Hanya digunakan selama menjalankan modul yang menggunakan
runner berbasis rangkaian pengujian.
| Parameter | |
|---|---|
moduleContext |
IInvocationContext: IInvocationContext modul. |
testRunEnded
public void testRunEnded (long elapsedTimeMillis,
HashMap<String, MetricMeasurement.Metric> runMetrics)Melaporkan akhir eksekusi pengujian. FIXME: Kita tidak dapat memiliki dua antarmuka Map<> dengan jenis yang berbeda, jadi kita harus menggunakan HashMap di sini.
| Parameter | |
|---|---|
elapsedTimeMillis |
long: waktu berlalu yang dilaporkan perangkat, dalam milidetik |
runMetrics |
HashMap: pasangan nilai kunci yang dilaporkan di akhir proses pengujian dengan Metric. |
testRunFailed
public void testRunFailed (FailureDescription failure)
Operasi pengujian laporan gagal diselesaikan karena kegagalan yang dijelaskan oleh FailureDescription.
| Parameter | |
|---|---|
failure |
FailureDescription: FailureDescription yang menjelaskan kegagalan dan konteksnya. |
testRunFailed
public void testRunFailed (String errorMessage)
Uji coba laporan gagal diselesaikan karena terjadi error fatal.
| Parameter | |
|---|---|
errorMessage |
String: String yang menjelaskan alasan kegagalan operasi. |
testRunStarted
public void testRunStarted (String runName,
int testCount,
int attemptNumber)Melaporkan dimulainya proses pengujian.
| Parameter | |
|---|---|
runName |
String: nama uji coba |
testCount |
int: jumlah total pengujian dalam operasi pengujian |
attemptNumber |
int: nomor pesanan, yang mengidentifikasi berbagai upaya runName yang sama
yang dijalankan beberapa kali. attemptNumber diindeks 0 dan harus bertambah setiap kali
ada proses baru. Misalnya, pengujian dicoba ulang secara terperinci 3 kali, maka akan ada total 4
proses dalam runName yang sama dan attemptNumber-nya adalah dari 0 hingga 3. |
testRunStarted
public void testRunStarted (String runName,
int testCount)Melaporkan dimulainya proses pengujian.
| Parameter | |
|---|---|
runName |
String: nama uji coba |
testCount |
int: jumlah total pengujian dalam operasi pengujian |
testRunStarted
public void testRunStarted (String runName,
int testCount,
int attemptNumber,
long startTime)Melaporkan dimulainya proses pengujian.
| Parameter | |
|---|---|
runName |
String: nama uji coba |
testCount |
int: jumlah total pengujian dalam operasi pengujian |
attemptNumber |
int: nomor pesanan, yang mengidentifikasi berbagai upaya runName yang sama
yang dijalankan beberapa kali. attemptNumber diindeks 0 dan harus bertambah setiap kali
ada run baru. Misalnya, pengujian dicoba ulang secara terperinci 3 kali, maka akan ada total 4 run
dengan runName yang sama dan attemptNumber dari 0 hingga 3. |
startTime |
long: waktu mulai eksekusi, diukur melalui System.currentTimeMillis() |
testRunStopped
public void testRunStopped (long elapsedTime)
Uji coba laporan dihentikan sebelum selesai karena permintaan pengguna.
TODO: saat ini tidak digunakan, pertimbangkan untuk menghapusnya
| Parameter | |
|---|---|
elapsedTime |
long: waktu berlalu yang dilaporkan perangkat, dalam milidetik |
testSkipped
public void testSkipped (TestDescription test, SkipReason reason)
Dipanggil saat pengujian dilewati dan tidak dijalankan karena alasan yang biasanya tidak diharapkan. Pengujian ini akan dicoba lagi untuk mendapatkan eksekusi yang tepat.
| Parameter | |
|---|---|
test |
TestDescription: mengidentifikasi pengujian |
reason |
SkipReason: SkipReason |
testStarted
public void testStarted (TestDescription test, long startTime)
Alternatif untuk testStarted(TestDescription) yang juga menentukan kapan pengujian dimulai, dikombinasikan dengan testEnded(TestDescription,long,Map) untuk pengukuran yang akurat.
| Parameter | |
|---|---|
test |
TestDescription: mengidentifikasi pengujian |
startTime |
long: waktu dimulainya pengujian, diukur melalui System.currentTimeMillis() |
testStarted
public void testStarted (TestDescription test)
Melaporkan dimulainya kasus pengujian individu. Antarmuka lama, sebaiknya gunakan testStarted(TestDescription) jika memungkinkan.
| Parameter | |
|---|---|
test |
TestDescription: mengidentifikasi pengujian |
uploadStoragePath
public void uploadStoragePath (String resourceId,
String storagePath,
LogFile logFile)Mengupload jalur penyimpanan artefak pengujian AnTS ke ResultDB.
Ini adalah solusi sementara untuk migrasi dari AnTS ke ResultDB (lihat go/convergence-tr). Metode ini harus dipanggil oleh pelapor AnTS saat jalur penyimpanan artefak tersedia.
Pelapor AnTS menjamin akan memanggil metode ini untuk setiap artefak yang diuploadnya. Reporter ini, pada gilirannya, akan mengupload semua artefak tersebut ke ResultDB dengan asosiasi pengujian yang benar. Untuk mengaitkan log dengan benar,logAssociation(String,LogFile) harus dipanggil untuk ID resource yang sama sebelumnya. Hal ini memastikan bahwa artefak
sudah dilacak. Jika tidak, artefak akan dikaitkan dengan unit kerja tingkat teratas
dari pemanggilan tradefed.
Metode ini tidak boleh dipanggil sebelum invocationStarted(IInvocationContext). Metode ini dapat dipanggil setelah invocationEnded(long) untuk pemanggilan yang dikelola oleh sistem hulu, karena tidak diselesaikan oleh pelapor ini. Hal ini tidak berlaku untuk pemanggilan yang dibuat secara lokal, yang diselesaikan di invocationEnded(long).
TODO(b/464941055): Hapus metode ini setelah kita dapat memigrasikan artefak AnTS dengan benar ke ResultDB.
| Parameter | |
|---|---|
resourceId |
String: ID resource artefak. |
storagePath |
String: Jalur penyimpanan artefak (misalnya, jalur /bigstore/). |
logFile |
LogFile: Objek LogFile yang terkait dengan artefak. |