InstrumentationResultParser

public class InstrumentationResultParser
extends MultiLineReceiver implements IInstrumentationResultParser

java.lang.Object
   ↳ com.android.ddmlib.MultiLineReceiver
     ↳ com.android.tradefed.result.ddmlib.InstrumentationResultParser


Bir enstrümantasyon testinin kabuktan çalıştırılan "ham çıkış modu" sonuçlarını ayrıştırır ve sonuçlar hakkında bir ITestRunListener'ı bilgilendirir.

Aşağıdaki çıktıyı bekler:

Testler çalıştırılmaya çalışılırken ölümcül bir hata oluştuysa:

 INSTRUMENTATION_STATUS: Error=error Message
 INSTRUMENTATION_FAILED:
 

veya

 INSTRUMENTATION_RESULT: shortMsg=error Message
 

Aksi takdirde, her biri başlangıç(1)/geçme(0)/başarısız(-2)/hata(-1) durum kodu sonucuyla sınırlandırılmış bir dizi durum anahtarı/değer çifti içeren bir dizi test sonucu alırsınız. Test çalıştırmasının sonunda, geçen test süresinin saniye cinsinden gösterilmesi beklenir.

Örneğin:

 INSTRUMENTATION_STATUS_CODE: 1
 INSTRUMENTATION_STATUS: class=com.foo.FooTest
 INSTRUMENTATION_STATUS: test=testFoo
 INSTRUMENTATION_STATUS: numtests=2
 INSTRUMENTATION_STATUS: stack=com.foo.FooTest#testFoo:312
    com.foo.X
 INSTRUMENTATION_STATUS_CODE: -2
 ...

 Time: X
 

Anahtar/değer çiftinin "değer" kısmının birkaç metin satırına yayılabileceğini unutmayın.

Bunun yerine InstrumentationProtoResultParser kullanın. Proto tabanlı ayrıştırıcıda logcat mesajı gibi ek bilgiler bulunur.

Özet

Herkese açık oluşturucular

InstrumentationResultParser(String runName, ITestRunListener listener)

Tek bir işleyici için InstrumentationResultParser oluşturur.

InstrumentationResultParser(String runName, Collection<ITestRunListener> listeners)

InstrumentationResultParser'ı oluşturur.

Herkese açık yöntemler

void cancel()

Test çalıştırmasının iptal edilmesini ister.

void done()

adb oturumu tamamlandığında üst öğe tarafından çağrılır.

void handleTestRunFailed(String errorMsg)

Bu yöntem, "am instrument" komutu bir istisnayla çöktüğünde çağrılır.

boolean isCancelled()

Test çalıştırması iptal edildiyse true değerini döndürür.

void processNewLines(String[] lines)

Enstrümantasyon testi çıkışını kabuktan işler.

Herkese açık oluşturucular

InstrumentationResultParser

public InstrumentationResultParser (String runName, 
                ITestRunListener listener)

Tek bir işleyici için InstrumentationResultParser oluşturur.

Parametreler
runName String: ITestRunListener.testRunStarted(String,int)'a sağlanacak test çalıştırması adı

listener ITestRunListener: Testler yürütülürken test sonuçları hakkında bilgi verilir.

InstrumentationResultParser

public InstrumentationResultParser (String runName, 
                Collection<ITestRunListener> listeners)

InstrumentationResultParser'ı oluşturur.

Parametreler
runName String: ITestRunListener.testRunStarted(String,int)'a sağlanacak test çalıştırması adı

listeners Collection: Testler yürütülürken test sonuçları hakkında bilgi verilir.

Herkese açık yöntemler

iptal

public void cancel ()

Test çalıştırmasının iptal edilmesini ister.

bitti

public void done ()

adb oturumu tamamlandığında üst öğe tarafından çağrılır.

handleTestRunFailed

public void handleTestRunFailed (String errorMsg)

Bu yöntem, "am instrument" komutu bir istisnayla çöktüğünde çağrılır. Kilitlenme test işlemi sırasında gerçekleşirse kayıtlı tüm dinleyicilere ITestRunListener.testRunFailed ve ardından ITestRunListener.testRunEnded bildirimi gönderilmelidir.

Parametreler
errorMsg String

isCancelled

public boolean isCancelled ()

Test çalıştırması iptal edildiyse true değerini döndürür.

İadeler
boolean Komutun yürütülmesini iptal etmek için true.

processNewLines

public void processNewLines (String[] lines)

Enstrümantasyon testi çıkışını kabuktan işler.

Parametreler
lines String: Yeni satırları içeren dizi.