Bu sayfada, yeni bir sonuç raporlayıcının nasıl uygulanacağı ve test için nasıl yapılandırılacağıyla ilgili temel bilgiler açıklanmaktadır.
Temel arayüz
Tradefed'de yeni bir sonuç raporlayıcı tanımlamak için sınıfın, çağrının farklı aşamalarını alıp işlemesine olanak tanıyan ITestInvocationListener
arayüzünü uygulaması gerekir:
invocationStarted
invocationEnded
invocationFailed
Sonuç raporlayıcılar, her test çalıştırmasının farklı aşamalarını da yönetir:
testRunStarted
testStarted
testFailed
veyatestIgnored
testEnded
testRunFailed
testRunEnded
Tüm bu etkinlikler göz önüne alındığında, iki temel sonuç raporlama türü vardır:
- Yalnızca nihai ve eksiksiz sonuçları raporlayın.
- Kısmi sonuçlarla ilgili işlem yapma.
Nihai toplam sonuçları bildiren sonuç raporlayıcı
Sonuçları alan harici bir hizmetle etkileşime geçme söz konusu olduğunda bu tür en yaygın durumdur. Raporlayan, sonuçları alır ve toplar, ardından invocationEnded
üzerinden tümünü sonuç uç noktasına gönderir.
Bu raporlama araçlarının, sonuçları kaydetme ve depolama işlemini invocationEnded
'a kadar yeniden uygulamamak için temel arayüz yerine CollectingTestListener
'ü genişletmesini öneririz.
Kısmi sonuçları bildiren sonuç raporlayıcı
Bu tür, genellikle sonuçların akış yaklaşımı için kullanılır. Bu yaklaşımda sonuçlar alınır ve hemen başka yerlere gönderilir. Örneğin, sonuçları konsola kaydeden bir raporlama aracısı bu türde olur.
Bu tür, etkinliklerde hangi işleme türünün gerekli olduğuna özeldir. Bu nedenle, temel arayüzün uygulanması genellikle önerilir.
XML yapılandırması
Nesne etiketi result_reporter
. Örnek:
<result_reporter class="com.android.tradefed.result.ConsoleResultReporter">
<option name="suppress-passed-tests" value="true"/>
</result_reporter>