Cihaz tarafı metrik toplayıcılar

Cihaz tarafı testleri (ör. enstrümantasyonlar, UI Automator testleri) çalıştırılırken, metrik toplama işlemini cihazda çalışan bir testle senkronize etmek zor olduğundan ana makine tarafı toplayıcılar ideal olmayabilir. Örneğin, eşzamansız olarak alınan bir ekran görüntüsünde istenen ekranın olmaması ve bu ekran görüntüsünün işe yaramaması olasıdır.

Bu kullanım alanlarını karşılamak için toplayıcılarımızın cihaz tarafı sürümü mevcuttur ve herhangi bir AndroidJUnitRunner enstrümantasyonunda kullanılabilir. BaseMetricListener Ticari test çerçevesi raporlama hattıyla tamamen uyumlu bir şekilde toplanan metrikleri otomatik olarak raporlamak için uygulanabilir.

Bu kitaplık, Tradefed'den bağımsızdır ve Tradefed olmadan kullanılabilir.

Tradefed'den AndroidJUnitTest çalıştırıcıyı kullanıyorsanız toplayıcınızın testlerinizle birlikte çalışmasını sağlamak 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 üzerine uygulama yaparken enstrümentasyonun yaşam döngüsü boyunca metriklerinizi ne zaman toplamak istediğinizi seçebilirsiniz:

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

Etkileşim

Cihaz tarafındaki metriklerin toplanması, enstrüman yürütme işlemiyle eşzamanlı olarak yapılır. Metrikler, enstrüman sonuçlarına geri aktarılır ve Tradefed tarafından ayrıştırılarak çağırma işleminin bir parçası olarak raporlanır.