Cihaz tarafı metrik toplayıcılar

Cihaz tarafında testler (ör. enstrümantasyonlar, kullanıcı arayüzü otomasyon testleri) çalıştırırken, metrik toplamayı cihazda çalışan bir testle senkronize etmek zor olduğundan ana makine tarafında toplayıcılar ideal olmayabilir. Örneğin, eşzamansız olarak alınan bir ekran görüntüsünün istenen ekranı kaçırması ve işe yaramaması olasıdır.

Bu kullanım alanlarını karşılamak için toplayıcılarımızın cihaz tarafında bir sürümü mevcuttur ve herhangi bir AndroidJUnitRunner enstrümanında kullanılabilir. BaseMetricListener, toplanan metrikleri Tradefed raporlama ardışık düzeniyle tamamen uyumlu bir şekilde otomatik olarak raporlamak için uygulanabilir.

Bu kitaplık, Tradefed'den ayrılmıştır ve Tradefed olmadan kullanılabilir.

Tradefed'den AndroidJUnitTest çalıştırıcısını kullanıyorsanız toplayıcınızı testlerinizle birlikte çalıştırmak için aşağıdaki komut satırı seçeneğini belirtebilirsiniz:

  --device-listeners android.device.collectors.ScreenshotListener
  LOCAL_STATIC_JAVA_LIBRARIES += collector-device-lib

Uygulama

Temel sınıf BaseMetricListener'ün üzerine uygularken, enstrümantasyonun yaşam döngüsü sırasında metriklerinizi ne zaman toplamak istediğinizi seçebilirsiniz:

  • Test çalışması başladığında: onTestRunStart
  • Bir test kaydı başladığında: onTestStart
  • Bir test senaryosu sona erdiğinde: onTestEnd
  • Bir test durumu başarısız olduğunda: onTestFail
  • Test çalışması sona erdiğinde: onTestRunEnd

Etkileşim

Cihaz tarafında metrik toplama işlemi, enstrümantasyon yürütme işlemiyle senkronize bir şekilde yapılır. Metrikler, enstrümantasyon sonuçlarına geri aktarılır ve çağrının bir parçası olarak raporlanmaları için Tradefed tarafından ayrıştırılır.