Sonuç raporlayıcısı oluşturma

Bu sayfada, yeni bir sonuç raporlayıcının nasıl uygulanacağı ve test için nasıl yapılandırılacağı ile ilgili temel bilgiler verilmektedir.

Temel arayüz

Tradefed'de yeni bir sonuç raporlayıcı tanımlamak için bir sınıfın, çağrının farklı aşamalarını alıp işlemeye olanak tanıyan ITestInvocationListener arayüzünü uygulaması gerekir:

  • invocationStarted
  • invocationEnded
  • invocationFailed

Sonuç bildirenler, her test çalıştırmasının farklı aşamalarını da yönetir:

  • testRunStarted
  • testStarted
  • testFailed veya testIgnored
  • testEnded
  • testRunFailed
  • testRunEnded

Tüm bu etkinlikler göz önüne alındığında, iki ana sonuç muhabiri türü vardır:

  • Yalnızca nihai sonuçların raporlanmasıyla ilgileniyorsanız.
  • Kısmi sonuçlarla ilgili harekete geçin.

Son tamamlanmış sonuçları bildiren sonuç muhabiri

Bu tür, sonuçları alan harici bir hizmetle etkileşim söz konusu olduğunda en sık karşılaşılan durumdur. Raporu gönderen kişi, sonuçları alır ve biriktirir. Ardından, invocationEnded tarihinde sonuç uç noktasına gönderir.

Bu raporları oluşturanların, sonuçları invocationEnded tarihine kadar kaydetme ve depolama işlemlerini yeniden uygulamamak için temel arayüz yerine CollectingTestListener arayüzünü genişletmelerini öneririz.

Kısmi sonuçları bildiren sonuç muhabiri

Bu tür genellikle sonuçlar alındığında ve hemen başka yerlere gönderildiğinde sonuçların yayınlanması için kullanılır. Örneğin, sonuçları konsola kaydeden bir muhabir bu türden olur.

Bu tür, etkinliklerde hangi tür işlemenin gerekli olduğuna bağlıdır. Bu nedenle, temel arayüzü uygulamak genellikle önerilen yöntemdir.

XML yapılandırması

Nesne etiketi result_reporter. Örneğin:

<result_reporter class="com.android.tradefed.result.ConsoleResultReporter">
    <option name="suppress-passed-tests" value="true"/>
</result_reporter>