Wymagania dostępności
-
1.1.1 Treść nietekstowa - poziom A: Wszelkie treści nietekstowe przedstawione użytkownikowi mają swoją alternatywę tekstową, która pełni tę samą funkcję, z wyjątkiem sytuacji opisanych poniżej.
- Kontrolki użytkownika i wprowadzanie danych przez użytkownika: Jeśli treść nietekstowa jest kontrolką użytkownika lub polem wprowadzania danych, wtedy posiada nazwę opisującą jej przeznaczenie. (Kryterium sukcesu 4.1.2 podaje dodatkowe wymagania dotyczące kontrolek oraz wprowadzania danych przez użytkownika.)
- Media oparte na czasie: Jeśli treścią nietekstową są media oparte na czasie, wtedy alternatywa tekstowa zawiera przynajmniej opisowe określenie treści nietekstowej. (Wytyczna 1.2 podaje dodatkowe wymagania, jeśli chodzi o media.)
- Test: Jeśli treść nietekstowa jest testem lub ćwiczeniem, które utraciłoby swój sens ze względu na przedstawienie tej samej treści w postaci tekstu, wtedy alternatywa w postaci tekstu podawać powinna przynajmniej opis pozwalający zrozumieć przeznaczenie treści nietekstowej.
- Odczucie zmysłowe: Jeśli treść nietekstowa ma za zadanie przede wszystkim tworzyć konkretne odczucie zmysłowe, wtedy alternatywa w postaci tekstu jest opisem pozwalającym zrozumieć przeznaczenie treści nietekstowej.
- CAPTCHA: Jeśli celem treści nietekstowej jest potwierdzenie, że do treści ma dostęp człowiek, a nie komputer, wtedy zapewnia się alternatywę w postaci tekstu, która identyfikuje oraz opisuje cel treści nietekstowej. Zapewnia się również alternatywne zabezpieczenia typu CAPTCHA, dostosowane do różnych możliwości percepcji użytkowników, uwzględniając różne rodzaje niepełnosprawności.
- Cele dekoracyjne, formatowanie, treść niewidoczna: Jeśli treść nietekstowa pełni funkcję czysto dekoracyjną, używana jest do formatowania wizualnego lub też nie jest przedstawiana użytkownikowi, powinna być wdrożona w sposób umożliwiający technologiom wspomagającym jej zignorowanie.
-
1.3.1 Informacje i relacje - poziom A: Informacje, struktura oraz relacje między treściami przekazywane poprzez prezentację mogą być odczytane przez program komputerowy lub istnieją w postaci tekstu.
-
2.4.6 Nagłówki i etykiety - poziom AA: Nagłówki i etykiety opisują temat lub cel treści.
- 3.2.2 Podczas wprowadzania danych - poziom A: Zmiana ustawień jakiegokolwiek komponentu interfejsu użytkownika nie powoduje automatycznej zmiany kontekstu, chyba, że użytkownik został poinformowany o takim działaniu, zanim zaczął korzystać z komponentu.
-
3.3.1 Identyfikacja błędu - poziom A: Jeśli automatycznie zostanie wykryty błąd wprowadzania danych, system wskazuje błędny element, a użytkownik otrzymuje opis błędu w postaci tekstu.
-
3.3.2 Etykiety lub instrukcje - poziom A: Gdy w treści wymagane jest wprowadzenie danych przez użytkownika, zapewnione są etykiety lub instrukcje.
-
3.3.3 Sugestie korekty błędów - poziom AA: Jeśli automatycznie zostanie wykryty błąd wprowadzania danych i znane są sugestie korekty, wtedy użytkownik otrzymuje takie sugestie, chyba, że zagrażałoby to bezpieczeństwu treści lub zmieniło jej cel.
-
3.3.4 Zapobieganie błędom (prawnym, finansowym, w danych) - poziom AA: W przypadku stron internetowych, które powodują zobowiązania prawne, zobowiązania prawne, albo na których użytkownik przeprowadza transakcje finansowe, modyfikuje lub usuwa dane w systemach przechowywania danych, nad którymi ma kontrolę, albo udziela odpowiedzi na testy, co najmniej jedna z poniższych informacji jest prawdziwa:
- 4.1.2 Nazwa, rola, wartość - poziom AA: Dla wszystkich komponentów interfejsu użytkownika (w tym, ale nie tylko, elementów formularzy, łączy oraz komponentów wygenerowanych przez skrypty) nazwa oraz rola mogą być określone programowo; stan, właściwości oraz wartości, które mogą być ustawione przez użytkownika, mogą również być ustawione programowo; powiadomienie o zmianach w tych elementach dostępne jest dla programów użytkownika, w tym technologii wspomagających.
Uzasadnienie metody testowej
Zapoznaj się z instrukcjami dotyczącymi formularza pod kątem kompletności i programowego powiązania z wprowadzanymi danymi. Wprowadź błędne dane i przejrzyj powiadomienia o błędach dostarczane użytkownikowi.
Ograniczenia, założenia lub wyjątki
- Pola formularza tylko do odczytu (np. wstępnie wypełnione) otrzymują fokus klawiatury i można je wybierać, ale nie można ich modyfikować. Pola te muszą być oznaczone i programowo określone. Są testowane zgodnie z KS 1.3.1.
- Wyłączone pola formularza nie otrzymują fokusu klawiatury, nie można ich wybrać ani modyfikować. Nie są one uwzględniane w tym teście.
- Połączenie dostępnej nazwy elementu i dostępnego opisu jest jego alternatywą tekstową.
- Kliknięcie opcji lub wybranie opcji w formularzu powinno spowodować zaznaczenie opcji, ale nie powinno inicjować zmiany kontekstu.
- Zmiana kontekstu została zdefiniowana na stronie Objaśnienie KS 3.2.1: Po oznaczeniu fokusem jako: poważna zmiana treści [strony internetowej], która, jeśli zostanie dokonana bez świadomości użytkowników, może dezorientować osoby, które nie są w stanie jednocześnie wyświetlić całej strony. Zmiany kontekstu obejmują zmiany:
- W programie użytkownika (przeglądarce, itp.)
- okno ekranu
- fokusu
- treści, która zmienia znaczenie dokumentu.
- Uwaga: Zmiana treści nie zawsze oznacza zmianę kontekstu. Zmiany nie zawsze oznacza zmianę kontekstu. Zmiany treści, na przykład rozwinięcie drzewa, dynamicznego menu lub karty niekoniecznie zmieniają kontekst, dopóki nie zmienią jednego z powyższych (np. fokusu).
- Przykłady: Otwarcie nowego okna, przeniesienie fokusu na inny obiekt, przejście do innego dokumentu (w tym wszystko, co dla użytkownika może wyglądać tak, jakby przeszedł do innego dokumentu) lub przekształcenie wyglądu dokumentu.
- Zgodnie z Objaśnieniem KS 3.3.2: Etykiety lub instrukcje, to kryterium sukcesu nie ma zastosowania do łączy lub innych kontrolek (takich jak widżet rozwijania/zwijania lub podobne komponenty interaktywne), które nie są powiązane z wprowadzaniem danych.
10.A Procedura testowania nazw formularzy
Identyfikator testu podstawowego: 10.A-FormName
Identyfikacja treści
- Znajdź wszystkie komponenty formularza (komponenty zbierające dane), takie jak pola tekstowe, przyciski opcji, pola wyboru, pola tylko do odczytu i listy wielokrotnego wyboru.
- Znajdź wszystkie instrukcje i wskazówki (tekstowe i graficzne), które są powiązane ze składnikami formularza, w tym dotyczące elementów pogrupowanych, kolejności wypełniania, specjalnych warunków lub kwalifikatorów, instrukcji formatowania itp.
Instrukcja testowania
- Sprawdź, czy kombinacja dostępnej nazwy i dostępnego opisu nie jest pusta. [KS 4.1.2]
- Sprawdź, czy niepusta kombinacja dostępnej nazwy i dostępnego opisu opisuje cel formularza. [KS 4.1.2]. (Komponenty formularza zawierające treść inną niż tekst powinny być również mapowane na KS 1.1.1).
- Sprawdź, czy wszystkie istotne instrukcje i wskazówki (tekstowe i graficzne) są powiązanie programowe (np. powiązania nagłówków kolumn i/lub wierszy tabeli) ze składnikiem formularza. [KS 1.3.1]
Wynik testów
Jeżeli którykolwiek z powyższych testów zakończy się niepowodzeniem, test podstawowy 10.A-FormName również kończy się niepowodzeniem.
10.B Procedura testowania opisowości etykiet
Identyfikator testu podstawowego: 10.B-FormDescriptiveLabel
Identyfikacja treści
- Znajdź wszystkie komponenty formularza (komponenty zbierające dane), takie jak pola tekstowe, przyciski opcji, pola wyboru, pola tylko do odczytu i listy wielokrotnego wyboru.
- Znajdź wszystkie instrukcje i wskazówki (tekstowe i graficzne), które są powiązane ze składnikami formularza, w tym dotyczące elementów pogrupowanych, kolejności wypełniania, specjalnych warunków lub kwalifikatorów, instrukcji formatowania itp.
Instrukcja testowania
- Sprawdź, czy etykiety (instrukcje i wskazówki) każdego komponentu formularza opisują jego cel, informują użytkowników, jakie dane są oczekiwane i, jeśli ma to zastosowanie, jaki format jest wymagany. [KS 2.4.6]
Wynik testów
Jeżeli którykolwiek z powyższych testów zakończy się niepowodzeniem, test podstawowy 10.B-FormDescriptiveLabel również kończy się niepowodzeniem.
10.C Procedura testowania wprowadzania danych
Identyfikator testu podstawowego: 10.C-OnInput
Identyfikacja treści
Wszystkie aktywne komponenty formularzy.
Instrukcje testowania
- Wprowadź dane w każdym polu formularza i opuść pole (klawiszem Tab).
- Zmień wybór lub wartości w komponentach formularza, takich jak przyciski opcji, pola wyboru, listy wyboru itp.
- Sprawdź, czy opuszczenie komponentu lub zmiana wartości/wyboru w komponencie (np. wprowadzanie danych w polu tekstowym, zmiana wyboru przycisku opcji) NIE powoduje zmiany kontekstu, chyba że użytkownik został poinformowany o takim zachowaniu przed użyciem komponentu [KS 3.2.2]. Przykłady zmiany kontekstu:
- Automatyczne przesłanie formularza po opuszczeniu pola,
- Automatyczne przesłanie formularza po opuszczeniu ostatniego pola w formularzu,
- Uruchomienie nowego okna, gdy zostanie zmienione zaznaczenie w grupie przycisków opcji
- Przeniesienie fokusu na inny komponent interfejsu po zaznaczeniu elementu na liście wyboru
Wynik testów
Jeśli którykolwiek z powyższych testów zakończy się niepowodzeniem, test podstawowy 10.C-OnInput również kończy się niepowodzeniem.
10.D Procedura testowania identyfikacji błędów
Identyfikator testu podstawowego: 10.D-ErrorIdentification
Identyfikacja treści
Znajdź komponenty formularzy z automatycznym wykrywaniem błędów i powiadamianiem o nich.
Instrukcja testowania
- Wprowadź niepoprawne wartości w komponentach zbierających dane, aby wyzwolić automatyczne wykrywanie błędów, które skutkuje powiadomieniami o błędach, np.
- w polach oznaczonych jako wymagane
- w polach daty (format)
- w polach adresów internetowych (URL, e-mail)
- w polach przeznaczonych na hasło
- Jeśli automatycznie zostanie wykryty błąd we wprowadzaniu danych, sprawdź, czy powiadomienie o błędzie spełnia wszystkie poniższe warunki:
- użytkownik jest informowany o błędzie (albo natychmiast po opuszczeniu błędnie wypełnionego pola, albo przy próbie przesłania formularza) oraz
- błąd jest opisany użytkownikowi w formie tekstowej, oraz
- element, w którym występuje błąd, jest oznaczony tekstem.
Wynik testów
Jeżeli którykolwiek z powyższych testów zakończy się niepowodzeniem, wówczas test podstawowy 10.D-ErrorIdentification również kończy się niepowodzeniem.
10.E Procedura testowania widoczności etykiet i instrukcji
Identyfikator testu podstawowego: 10.E-FormHasLabel
Identyfikacja treści
- Znajdź wszystkie komponenty formularza (zbierające dane), takie jak pola tekstowe, przyciski opcji, pola wyboru, pola tylko do odczytu i listy wielokrotnego wyboru.
- Znajdź wszystkie instrukcje i wskazówki (tekstowe i graficzne), które są powiązane ze składnikami formularza, w tym dotyczące elementów pogrupowanych, kolejności wypełniania, specjalnych warunków lub kwalifikatorów, instrukcji formatowania itp.
Instrukcja testowania
- Sprawdź, czy każdy komponent formularza zbierający dane ma widoczne etykiety lub instrukcje, gdy otrzymuje fokus. [KS 3.3.2]
Wynik testów
Jeżeli którykolwiek z powyższych testów zakończy się niepowodzeniem, test podstawowy 10.E-FormHasLabel również kończy się niepowodzeniem
10.F Procedura testowania sugestii korekty błędów
Identyfikator testu podstawowego: 10.F-ErrorSuggestion
Identyfikacja treści
Znajdź komponenty formularzy z automatycznym wykrywaniem błędów i powiadamianiem o nich.
Instrukcja testowania
- Wprowadź niepoprawne wartości w komponentach zbierających dane, aby wywołać automatyczne wykrywanie błędów, które skutkuje powiadomieniami o błędach, np.
- w polach oznaczonych jako wymagane
- w polach daty (format)
- w polach adresów internetowych (URL, e-mail)
- w polach przeznaczonych na hasło
- Przejrzyj wszystkie powiadomienia o błędach.
- Sprawdź, czy podano dodatkowe wskazówki, jak poprawić błędy w polach formularza, które nie zagroziłyby bezpieczeństwu ani przeznaczeniu treści (np. przykłady poprawnych danych, wskazówki, jak poprawić dane wprowadzone przez użytkownika). [KS 3.3.3]
Wynik testów
Jeżeli którykolwiek z powyższych testów zakończy się niepowodzeniem, test podstawowy 10.F-ErrorSuggestion również kończy się niepowodzeniem.
10.G Procedura testowania zapobiegania błędom (prawnym, finansowym, w danych)
Identyfikator testu podstawowego: 10.G-ErrorPrevention
Identyfikacja treści
Dokument, który powoduje powstanie zobowiązań prawnych lub transakcji finansowych dla użytkownika, który modyfikuje lub usuwa dane kontrolowane przez użytkownika w systemach przechowywania danych lub który przesyła odpowiedzi testowe użytkownika.
Instrukcja testowania
- Wypełnij pola formularza niezbędne do przesłania, wpisz błędne dane albo poleć usunięcie danych.
- Sprawdź, czy spełniony jest co najmniej jeden z poniższych warunków [KS 3.3.4]: a. Odwracalność: Wprowadzenie danych jest odwracalne. b. Sprawdzanie: Dane wprowadzone przez użytkownika są sprawdzane pod kątem błędów, a użytkownik ma możliwość wprowadzenia poprawek. c. Potwierdzenie: Istnieje mechanizm sprawdzania, potwierdzania i korygowania informacji przed jej ostatecznym wysłaniem.
Wynik testów
Jeżeli którykolwiek z powyższych testów zakończy się niepowodzeniem, test podstawowy 10.G-ErrorPrevention również kończy się niepowodzeniem.
Poradnik: Wskazówki dotyczące usprawniania procesów testowych
- W przypadku KS 3.3.1 dopuszczalne techniki obejmują: (a) przeniesienie fokusu na komunikat o błędzie informujący użytkownika, że poprzednie pole wymaga korekty i opisujące błąd, (b) odświeżenie strony po przesłaniu formularza i wyświetlenie na górze strony opisów i lokalizacji błędów. Uwaga: Ponowne wyświetlenie formularza i wskazanie pól zawierających błędy w formularzu nie jest wystarczające, aby spełnić ten wymóg. Użytkownik nie powinien być zmuszony do przeszukiwania formularza, aby znaleźć miejsca, w których popełniono błędy.
- W przypadku KS 3.3.4: ponieważ użytkownik może przejrzeć prosty, jednostronicowy formularz przed naciśnięciem przycisku „Prześlij” na stronie, inny specjalny mechanizm weryfikacji poprawności nie jest wymagany.
Techniki WCAG 2.2
Przy opracowywaniu tej procedury testowej, wzięto pod uwagę następujące wystarczające techniki i typowe błędy:
- G13: Opisywanie, co się stanie, zanim nastąpi zmiana w kontrolce formularza, który powoduje zmianę kontekstu
- G80: Zapewnienie przycisku przesyłania w celu zainicjowania zmiany kontekstu
- G83: Zapewnienie opisów tekstowych wskazujących wymagane pola, które nie zostały wypełnione
- G85: Zapewnienie komunikatu tekstowego, gdy dane wprowadzane przez użytkownika nie mieszczą się w wymaganym formacie lub zakresie wartości
-
G115: Użycie znaczników semantycznych do oznaczania struktury
- G131: Zapewnienie opisowych etykiet
- H44: Użycie elementu label do powiązania etykiet tekstowych z kontrolkami formularzy
-
HTML65: Użycie atrybutu title do oznaczenia kontrolek formularzy, gdy nie można użyć elementu label
- H71: Zapewnienie opisu dla grup kontrolek formularzy za pomocą elementów fieldset i legend
-
PDF5: Wskazanie wymaganych kontrolek formularzy w formularzach PDF
- PDF10: Zapewnianie etykiet dla interaktywnych kontrolek formularzy w dokumentach PDF
- PDF12: Zapewnianie informacji o nazwach, rolach i wartościach pól formularzy w dokumentach PDF
- PDF15: Zapewnianie przycisków Wyślij w przesyłanych formularzach PDF
- PDF22: Wskazywanie, kiedy dane wprowadzone przez użytkownika nie mieszczą się w wymaganym formacie lub wartościach w formularzach PDF
- SCR19: Używanie zdarzenia onchange na wybranym elemencie bez powodowania zmiany kontekstu
- F36: Niespełnienie kryterium sukcesu 3.2.2 z powodu automatycznego przesłania formularza i prezentacji nowej treści bez uprzedniego ostrzeżenia, gdy ostatnie pole formularza ma wartość
- F37: Niespełnienie kryterium sukcesu 3.2.2 z powodu uruchomienia nowego okna bez uprzedniego ostrzeżenia po zmianie wyboru przycisku radiowego, pola wyboru lub listy wyboru
- F82: Niespełnienie kryterium sukcesu 3.3.2 poprzez wizualne sformatowanie zestawu pól numeru telefonu, ale bez etykiety tekstowej