InstrumentationProtoResultParser
  public
  
  
  
  class
  InstrumentationProtoResultParser
  
    extends Object
  
  
  
  
  
      implements
      
        IInstrumentationResultParser
      
  
  
| java.lang.Object | |
| ↳ | com.android.tradefed.result.ddmlib.InstrumentationProtoResultParser | 
Przetwarza wyniki „tryb wyjścia protoStd” testu instrumentacji uruchomionego z powłoki i informuje o nich interfejs ITestRunListener.
Polecenie am instrument z opcją „-m” wyświetla stan wykonania testu w formacie binarnym protobuf. Komunikat protobuf wyjściowy to InstrumentationData.Session, który ma 2 pola: 1) pole powtarzane InstrumentationData.TestStatus i 2) InstrumentationData.SessionStatus. Polecenie am instrument wyświetla komunikat o stanie testu przed jego wykonaniem i po jego zakończeniu. Funkcja addOutput(byte, int, int) jest wywoływana z argumentem data, który jest zserializowanymi bajtami obiektu TestStatus(es). Gdy wszystkie testy zostaną ukończone, polecenie wyświetli wartość SessionStatus.
 
Pełną definicję protokołu protobuf znajdziesz na stronie https://cs.android.com/android/platform/superproject/+/master:frameworks/base/cmds/am/proto/instrumentation_data.proto.
InstrumentationProtoResultParser to maszyna stanów, a stany są definiowane w ERROR(InstrumentationProtoResultParserState/com.android.tradefed.result.ddmlib.InstrumentationProtoResultParser.InstrumentationProtoResultParserState InstrumentationProtoResultParserState). Stan zaczyna się od ERROR(/com.android.tradefed.result.ddmlib.InstrumentationProtoResultParser.InstrumentationProtoResultParserState#NOT_STARTED). Gdy zobaczy stan pierwszego przypadku testowego, przechodzi do ERROR(InstrumentationProtoResultParserState.RUNNING/com.android.tradefed.result.ddmlib.InstrumentationProtoResultParser.InstrumentationProtoResultParserState#RUNNING InstrumentationProtoResultParserState.RUNNING). Stan zmienia się na ERROR(/com.android.tradefed.result.ddmlib.InstrumentationProtoResultParser.InstrumentationProtoResultParserState#FINISHED), jeśli wszystkie testy zostały wykonane, lub na ERROR(/com.android.tradefed.result.ddmlib.InstrumentationProtoResultParser.InstrumentationProtoResultParserState#CANCELLED), jeśli nastąpiło wywołanie metody cancel().
 
Za każdym razem, gdy będzie dostępny nowy stan testu, zarejestrowani słuchacze zostaną o tym powiadomieni.
Podsumowanie
| Konstruktory publiczne | |
|---|---|
| 
      InstrumentationProtoResultParser(String runName, Tworzy  | |
| Metody publiczne | |
|---|---|
| 
        
        
        
        
        
        void | 
      addOutput(byte[] data, int offset, int length)
      Ta metoda jest wywoływana za każdym razem, gdy są dostępne nowe dane. | 
| 
        
        
        
        
        
        void | 
      cancel()
       | 
| 
        
        
        
        
        
        void | 
      flush()
       | 
| 
        
        
        
        
        
        void | 
      handleTestRunFailed(String errorMsg)
       | 
| 
        
        
        
        
        
        boolean | 
      isCancelled()
       | 
Konstruktory publiczne
InstrumentationProtoResultParser
public InstrumentationProtoResultParser (String runName, 
                 listeners) Tworzy InstrumentationProtoResultParser.
| Parametry | |
|---|---|
| runName | String: nazwa testu, który ma być przekazany doITestRunListener.testRunStarted | 
| listeners | : informowanie o wynikach testów w trakcie ich wykonywania. | 
Metody publiczne
addOutput
public void addOutput (byte[] data, 
                int offset, 
                int length)Ta metoda jest wywoływana za każdym razem, gdy są dostępne nowe dane.
| Parametry | |
|---|---|
| data | byte: serializowane dane wiadomościInstrumentationData.Session. Jeślidatajest niepełnym fragmentem, jest dodawany do wewnętrznego bufora i przetwarzany w następnym wywołaniu funkcjiaddOutput(byte, int, int). | 
| offset | int: przesunięcie nowych danych zapisanych w plikudata | 
| length | int: bajty nowych danych w plikudata, które mają zostać przetworzone. | 
anuluj
public void cancel ()
spłukać
public void flush ()
handleTestRunFailed
public void handleTestRunFailed (String errorMsg)
| Parametry | |
|---|---|
| errorMsg | String | 
isCancelled
public boolean isCancelled ()
| Zwroty | |
|---|---|
| boolean | |
