Erişilebilirliği test etmek, uygulamanızı farklı bir bakış açısından Erişilebilirlik ihtiyacı olan kullanıcılar da dahil olmak üzere kullanıcı tabanınızın tamamı. Bu biçim uygulamanızı daha güçlü ve çok yönlü hale getirme fırsatlarını ortaya çıkarabilir.
Bu sayfada, mevcut Espresso'nuza erişilebilirlik kontrollerini nasıl ekleyeceğiniz açıklanmaktadır. testler. Erişilebilirlik hakkında daha fazla bilgi için Erişilebilirlik kılavuzlar.
Kontrolleri etkinleştir
Erişilebilirlik testini şurada etkinleştirebilir ve yapılandırabilirsiniz:
AccessibilityChecks
sınıf:
Kotlin
import androidx.test.espresso.accessibility.AccessibilityChecks @RunWith(AndroidJUnit4::class) @LargeTest class MyWelcomeWorkflowIntegrationTest { init { AccessibilityChecks.enable() } }
Java
import androidx.test.espresso.accessibility.AccessibilityChecks; @RunWith(AndroidJUnit4.class) @LargeTest public class MyWelcomeWorkflowIntegrationTest { @BeforeClass public void enableAccessibilityChecks() { AccessibilityChecks.enable(); } }
Varsayılan olarak kontroller, aşağıda tanımlanan herhangi bir görüntüleme işlemi gerçekleştirdiğinizde çalıştırılır:
ViewActions
. Her biri
kontrol seçeneği, işlemin gerçekleştirildiği görünümün yanı sıra
alt öğe görünümleri. Bir ekranın görünüm hiyerarşisinin tamamını değerlendirebilirsiniz.
her kontrol için true
setRunChecksFromRootView()
,
aşağıdaki kod snippet'inde gösterildiği gibidir:
Kotlin
AccessibilityChecks.enable().setRunChecksFromRootView(true)
Java
AccessibilityChecks.enable().setRunChecksFromRootView(true);
Sonuç alt kümelerini gizle
Espresso, uygulamanızda erişilebilirlik kontrolleri çalıştırdıktan sonra,
Uygulamanızın erişilebilirliğini iyileştirme ve ele almanın mümkün olmadığı fırsatlar
hemen teslim edebilirsiniz. Espresso testlerinin sürekli başarısız olmasını engellemek için
yoksa geçici olarak yoksayabilirsiniz. Erişilebilirlik Testi
Çerçeve (ATF), bu işlevi
setSuppressingResultMatcher()
yöntemini kullanın. Bu yöntem, Espresso'ya belirtilen öğeyi karşılayan tüm sonuçları
matcher ifadesindeki gibi.
Uygulamanızda erişilebilirliğin tek bir yönüne değinen değişiklikler yaptığınızda Espresso'nun birçok farklı alanda sonuç vermesi için faydalıdır. erişilebilir hale getirmeyi amaçlıyoruz. Bu nedenle, en iyi seçenek sadece belirli bilinen iyileştirme fırsatlarına değineceğiz.
Kullanmayı planladığınız erişilebilirlik testi bulgularını geçici olarak engellediğinizde benzer bulguları yanlışlıkla gizlememek önemlidir. Örneğin, Bu nedenle, dar kapsamlı eşleştiriciler kullanın. Bunu yapmak için, eşleştirici Böylece Espresso, belirli bir sonucu yalnızca aşağıdaki ölçütlerin her birini karşılıyorsa baskılar şu erişilebilirlik kontrollerini gerçekleştirebilirsiniz:
- Belirli bir türdeki erişilebilirlik kontrolleri (ör. dokunma kontrolü yapılanlar) hedef boyutu.
- Erişilebilirlik, düğme gibi belirli bir kullanıcı arayüzü öğesini değerlendiren kontrolleri kontrol eder.
ATF, çeşitli eşleştiricileri tanımlar
kullanabilirsiniz. Aşağıdakiler
örnek, tek bir TextView
ile ilgili kontrollerin sonuçlarını gizler
öğenin renk kontrastı. Öğenin kimliği: countTV
.
Kotlin
AccessibilityChecks.enable().apply { setSuppressingResultMatcher( allOf( matchesCheck(TextContrastCheck::class.java), matchesViews(withId(R.id.countTV)) ) ) }
Java
AccessibilityValidator myChecksValidator = AccessibilityChecks.enable() .setSuppressingResultMatcher( allOf( matchesCheck(TextContrastCheck.class), matchesViews(withId(R.id.countTV))));