Sprawdzanie ułatwień dostępu

Testowanie ułatwień dostępu pozwala korzystać z aplikacji z perspektywy wszystkich użytkowników, w tym użytkowników potrzebujących ułatwień dostępu. Ta forma Testy mogą ujawnić możliwości ulepszenia aplikacji.

Na tej stronie dowiesz się, jak dodać informacje o ułatwieniach dostępu do istniejącego Espresso testów. Więcej informacji o ułatwieniach dostępu znajdziesz w artykule Ułatwienia dostępu .

Włącz sprawdzanie

Testowanie ułatwień dostępu możesz włączyć i skonfigurować za pomocą AccessibilityChecks zajęcia:

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();
    }
}

Domyślnie weryfikacja jest przeprowadzana po wykonaniu dowolnej czynności wyświetlenia zdefiniowanej w ViewActions Każdy obejmuje widok, w którym wykonywana jest czynność, wyświetleń podrzędnych. Możesz ocenić całą hierarchię widoku ekranu w trakcie za każdym razem, przekazując true do setRunChecksFromRootView(), Jak widać w tym fragmencie kodu:

Kotlin

AccessibilityChecks.enable().setRunChecksFromRootView(true)

Java

AccessibilityChecks.enable().setRunChecksFromRootView(true);

Pomijaj podzbiory wyników

Gdy Espresso sprawdzi ułatwienia dostępu w aplikacji, może pojawić się kilka możliwości poprawy ułatwień dostępu w aplikacji, których nie możesz wykorzystać natychmiast. Aby zapobiec ciągłemu niepowodzenia testów Espresso, ponieważ tych wyników możesz tymczasowo zignorować. Test ułatwień dostępu Platforma (ATF) udostępnia tę funkcję za pomocą setSuppressingResultMatcher() , która instruuje Espresso do pomijania wszystkich wyników, które spełniają wyrażenie dopasowania.

Gdy wprowadzisz w aplikacji zmiany dotyczące jednego aspektu ułatwień dostępu, jest bardzo korzystne dla Espresso, aby zaprezentować wiele innych aspektów z ułatwieniami dostępu. Z tego powodu najlepiej jest pomijać tylko określone znane możliwości poprawy.

Gdy tymczasowo ukrywasz wyniki testów ułatwień dostępu, które planujesz adresu e-mail w przyszłości, ważne jest, aby przypadkowo nie pominąć podobnych wyników. Dla: dlatego używaj dopasowań o wąskim zakresie. Aby to zrobić, wybierz dopasowanie dzięki czemu Espresso pomija dany wynik tylko wtedy, gdy spełnia każdy z te testy ułatwień dostępu:

  1. Testy ułatwień dostępu określonego typu, na przykład wymagające dotyku rozmiar docelowy.
  2. Testy ułatwień dostępu oceniające określony element interfejsu, na przykład przycisk.

Część strony widoczna na ekranie definiuje kilka dopasowań która pomoże Ci określić, które wyniki mają być wyświetlane w ramach testów Espresso. Poniżej przykład pomija wyniki kontroli, które odnoszą się do pojedynczego elementu TextView kontrastu kolorów tego elementu. Identyfikator elementu to 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))));