Sistem durumunu kontrol edin

Sistem durumu denetleyicileri (SSC'ler), paket düzeyinde yapılandırmada tanımlanır ve yardımcı olabilir. Modülün değişip değişmediğini belirlemek için kontroller ve belirtilen bazı durumları geri yüklemediyseniz (örneğin, bir sistem özelliğini değiştirmek) değer.

SSC'ler genellikle, modül yazarlarının temizlemeyi unutmamasını sağlamak için kullanılır test ettikten sonra, ancak sorunu çözülebiliyorsa sorunun çözülmesi için bunun bir izlerini sağlayın.

İkincil kullanım da mümkün olduğunda orijinal durumu geri yüklemektir. Örneğin, tuş koruyucuyu kapatmayın.

Sistem durumu denetleyicisi XML tanımı

<system_checker class="com.android.tradefed.suite.checker.KeyguardStatusChecker" />
<system_checker class="com.android.tradefed.suite.checker.LeakedThreadStatusChecker" />
<system_checker class="com.android.tradefed.suite.checker.SystemServerStatusChecker" />

SSC'ler, Tradefed yapılandırmasındaki system_checker etiketinin altında tanımlanır XML.

Uygulama

Her SSC, ISystemStatusChecker arayüz, Bu işlem, preExecutionCheck ve postExecutionCheck adlı iki ana yöntemi sağlar. yürütülmesinden önce ve sonra çalışan her modülle birlikte çalışır.

Bir denetleyicinin ikisinden yalnızca birini uygulaması veya ve modülün öncesindeki durumu kontrol etmeniz gerekiyorsa durum hakkında daha fazla bilgi edineceksiniz.

Birkaç örnek uygulamalar Tradefed'te mevcuttur. Her uygulamanın tek bir kontrole odaklanması önerilir yeniden kullanılabilirliği artırmak anlamına gelir. Örneğin, SystemServerStatusCheck sırasında system_server işleminin cihazda yeniden başlatılıp başlatılmadığını kontrol eder test paketi yürütme. postExecutionCheck içinde deviceSoftRestarted, Bu bölüm, NativeDevice system_server işleminin yeniden başlatılıp başlatılmadığını kontrol edin.

Her işlem, StatusCheckerResult Bu sayede, hata raporu gibi ek bilgilerin yakalamanız gerekir.

CTS'de bu terimler nerede tanımlanır?

CTS sistem durumu denetleyicileri şurada tanımlanmıştır: /test/suite_harness/tools/cts-tradefed/res/config/cts-system-checkers.xml.

Denetleyici hatalarını bulma

Sistem denetleyici hataları varsayılan olarak yalnızca günlüklerde ve hata raporlarında gösterilir. şu biçimdeki ada sahip çağrı için yakalandı: bugreport-checker-post-module-<module name>.zip

Bu, hata raporunun hangi modülden sonra oluşturulduğunu öğrenmenize olanak tanır.

Sistem denetleyici raporunu bir test hatası olarak kullanmak mümkündür. --report-system-checkers seçeneği true olarak ayarlanıyor. Bu durum, başarısızlığın nedeni durum denetleyici olmak üzere başarısız olarak gösterilen test çalıştırması kontrol edebilirsiniz.