Compose'daki kullanıcı arayüzü testleri, kullanıcı arayüzü hiyerarşisiyle etkileşim kurmak için semantik kullanır. Semantik, adından da anlaşılacağı gibi kullanıcı arayüzü parçalarına anlam kazandırır. Bu bağlamda, "kullanıcı arayüzü parçası" (veya öğe), tek bir composable'dan tam ekrana kadar her şeyi ifade edebilir. Semantik ağacı, kullanıcı arayüzü hiyerarşisiyle birlikte oluşturulur ve hiyerarşiyi açıklar.
Semantik hakkında genel olarak daha fazla bilgiyi Semantics in Compose (Compose'da Semantik) sayfasında bulabilirsiniz.
Şekil 1. Tipik bir kullanıcı arayüzü hiyerarşisi ve semantik ağacı.
Semantik çerçeve öncelikli olarak erişilebilirlik için kullanılır. Bu nedenle testler, semantik tarafından kullanıcı arayüzü hiyerarşisi hakkında sunulan bilgilerden yararlanır. Geliştiriciler, nelerin ve ne kadarının gösterileceğine karar verir.
Şekil 2. Simge ve metin içeren tipik bir düğme.
Örneğin, bir simge ve metin öğesinden oluşan aşağıdaki gibi bir düğme için varsayılan semantik ağaç yalnızca "Beğen" metin etiketini içerir. Bunun nedeni, Text gibi bazı composable'ların semantik ağacına bazı özellikleri zaten göstermesidir. Modifier kullanarak semantik ağaca özellikler ekleyebilirsiniz.
MyButton(
modifier = Modifier.semantics { contentDescription = "Add to favorites" }
)
Ek Kaynaklar
- Android'de uygulamaları test etme: Android testleriyle ilgili ana açılış sayfası, testle ilgili temel bilgiler ve teknikler hakkında daha geniş bir bakış açısı sunar.
- Testlerle ilgili temel bilgiler: Android uygulamalarını test etmenin temel kavramları hakkında daha fazla bilgi edinin.
- Yerel testler: Bazı testleri yerel olarak, kendi iş istasyonunuzda çalıştırabilirsiniz.
- Enstrümantasyon testleri: Enstrümantasyon testleri de çalıştırmak iyi bir uygulamadır. Yani doğrudan cihaz üzerinde çalışan testler.
- Sürekli entegrasyon: Sürekli entegrasyon, testlerinizi dağıtım ardışık düzeninize entegre etmenize olanak tanır.
- Farklı ekran boyutlarını test edin: Kullanıcıların kullanabileceği çok sayıda cihaz olduğundan farklı ekran boyutlarını test etmeniz gerekir.
- Espresso: Görünüm tabanlı kullanıcı arayüzleri için tasarlanmış olsa da Espresso bilgisi, Compose testinin bazı yönleri için yine de faydalı olabilir.