Na tej stronie znajdują się podstawowe informacje na temat implementacji nowego narzędzia do raportowania wyników oraz skonfigurować ją na potrzeby testu.
Główny interfejs
Aby zdefiniować w ramach Tradefed nową funkcję raportowania wyników, klasa musi zaimplementować
ITestInvocationListener
który pozwala odbierać i obsługiwać różne etapy
wywołanie:
invocationStarted
invocationEnded
invocationFailed
Raporty wyników obsługują też różne etapy każdego testu:
testRunStarted
testStarted
testFailed
lubtestIgnored
testEnded
testRunFailed
testRunEnded
Biorąc pod uwagę wszystkie te zdarzenia, wyróżniamy 2 główne typy osób zajmujących się raportowaniem wyników:
- Skup się tylko na raportowaniu ostatecznych wyników.
- Wykonuj działania dotyczące częściowych wyników.
Raportujący wyniki, który podaje ostateczne wyniki
To najczęstszy przypadek interakcji z reklamą zewnętrzną
i usługi otrzymującej wyniki. Osoba zgłaszająca po prostu otrzymuje i gromadzi
a następnie wysyła je wszystkie w invocationEnded
do punktu końcowego wyniku.
Zalecamy tym osobom wydłużenie terminu na CollectingTestListener
podstawowego interfejsu, by uniknąć ponownego wdrażania zapisywania i przechowywania
wyników do invocationEnded
.
Zgłaszający wyniki, który zgłasza częściowe wyniki
Ten typ jest zwykle używany do strumieniowego przesyłania wyników, gdy są od razu odbierane i wysyłane do innych miejsc. Na przykład reporter który rejestruje wyniki w konsoli, będzie tego typu.
Ten typ zależy od tego, jaki jest wymagany sposób obsługi zdarzeń. dlatego zwykle zalecaną metodą jest wdrożenie interfejsu podstawowego.
Konfiguracja XML
Tag obiektu to result_reporter
. Na przykład:
<result_reporter class="com.android.tradefed.result.ConsoleResultReporter">
<option name="suppress-passed-tests" value="true"/>
</result_reporter>