Поделиться через


Тестирование доступности

В этом разделе описаны различные средства и процедуры проверки доступности вашего приложения Windows.

Он предназначен для команд, которые уделяют приоритетное внимание доступности и автоматизированному тестированию на протяжении всего жизненного цикла разработки. Наиболее эффективный подход объединяет автоматизацию, которая выполняется в CI с ориентированными ручными вспомогательными технологиями тестирования для сценариев высокого риска.

Успешные пользовательские возможности

Программная и клавиатурная доступность необходимы для обеспечения доступности. Протестируйте приложение Windows, вспомогательные технологии (AT) и платформы пользовательского интерфейса, чтобы обеспечить успешный опыт для людей с зрением, обучением, ловкостью, мобильностью или ограниченными возможностями взаимодействия, а также людьми, которые предпочитают навигацию по клавиатуре.

Без достаточной поддержки вспомогательных технологий (AT), таких как средства чтения с экрана и экранные клавиатуры, многие пользователи могут найти ваше приложение трудно или невозможно использовать.

Средства тестирования специальных возможностей

Используйте средства в этом разделе во время разработки, а не только перед выпуском. Начните с Accessibility Insights для быстрого создания значительных проверок, а затем используйте инструменты SDK для проведения более детальной проверки свойств автоматизации пользовательского интерфейса, событий или шаблонов элементов управления.

Инсайты в области доступности

Аналитика специальных возможностей помогает разработчикам находить и устранять проблемы со специальными возможностями как на веб-сайтах, так и в приложениях Windows.

  • Аналитика специальных возможностей для Windows помогает разработчикам находить и устранять проблемы со специальными возможностями в приложениях Windows. Средство поддерживает три основных сценария:
    • Live Inspect позволяет разработчикам убедиться, что элемент в приложении имеет правильные свойства автоматизации пользовательского интерфейса, просто наведите указатель мыши на элемент или задав фокус клавиатуры на нем.
    • FastPass — упрощенный двухэтапный процесс, который помогает разработчикам выявлять распространенные проблемы с высоким уровнем доступности менее чем за пять минут.
    • Устранение неполадок позволяет диагностировать и устранять определенные проблемы с доступностью.
  • Специальные возможности для Интернета — это расширение для Chrome и Microsoft Edge Insider , которое помогает разработчикам находить и устранять проблемы со специальными возможностями в веб-приложениях и сайтах. Она поддерживает два основных сценария:
    • FastPass — упрощенный двухэтапный процесс, который помогает разработчикам выявлять распространенные проблемы с высоким уровнем доступности менее чем за пять минут.
    • Оценка — позволяет любому пользователю убедиться, что веб-сайт равен 100% соответствует стандартам и рекомендациям по специальным возможностям. Доступность Insights также позволяет просматривать элементы автоматизации пользовательского интерфейса, свойства, шаблоны элементов управления и события (аналогичные устаревшим средствам Inspect и AccEvent, описанным в следующем разделе).

Устаревшие средства тестирования

Замечание

Описанные здесь средства по-прежнему доступны в пакете SDK для Windows, но мы настоятельно рекомендуем перейти в Аналитику специальных возможностей.

Пакет средств разработки программного обеспечения Windows (SDK) включает несколько средств тестирования специальных возможностей, включая AccScope, проверку и проверку специальных возможностей пользовательского интерфейса, среди прочего.

Вы можете запустить следующие средства тестирования специальных возможностей из командной строки Microsoft Visual Studio или перейдите в папку bin , где на компьютере разработки установлен пакет SDK для Windows.

AccScope

AccScope включает визуальную оценку доступности приложения на ранних этапах дизайна и разработки. AccScope специально предназначен для тестирования сценариев доступности для экранного диктора и использует информацию об автоматизации пользовательского интерфейса, предоставляемую приложением, чтобы показать, где можно повысить доступность.

Inspect

Inspect позволяет выбрать любой элемент пользовательского интерфейса и просмотреть его данные доступности. Вы можете просматривать свойства и шаблоны автоматизации пользовательского интерфейса Майкрософт и тестировать структуру навигации элементов автоматизации в дереве автоматизации пользовательского интерфейса. Особенно полезно обеспечить правильное задание свойств и шаблонов элементов управления при расширении общего элемента управления или создании пользовательского элемента управления.

Используйте Inspect при разработке пользовательского интерфейса, чтобы выяснить, как атрибуты доступности отображаются в автоматизации пользовательского интерфейса. В некоторых случаях атрибуты приходят из поддержки автоматизации пользовательского интерфейса, которая уже реализована для элементов управления XAML по умолчанию. В других случаях атрибуты приходят из определенных значений, заданных в разметке XAML, как присоединенные свойства AutomationProperties .

На следующем рисунке показан инструмент Inspect, запрашивающий свойства автоматизации пользовательского интерфейса элемента меню Правка в Блокноте.

Снимок экрана средства проверки.

Средство проверки доступности пользовательского интерфейса

Средство проверки доступности пользовательского интерфейса (AccChecker) помогает обнаруживать потенциальные проблемы с доступностью в режиме выполнения. AccChecker включает проверки для UI Automation, Microsoft Active Accessibility и ARIA (доступных расширенных интернет-приложений). Он может обеспечить статическую проверку ошибок, таких как отсутствующие имена, проблемы с деревом и многое другое. Он помогает проверить программный доступ и включает дополнительные функции для автоматизации тестирования специальных возможностей. Вы можете запустить AccChecker в пользовательском интерфейсе или в режиме командной строки. Чтобы запустить средство режима пользовательского интерфейса, откройте папку AccChecker в папке bin Windows SDK, запустите acccheckui.exeи выберите меню справки .

Проверка автоматизации пользовательского интерфейса

Проверка автоматизации пользовательского интерфейса (проверка UIA) — это платформа для ручного и автоматического тестирования реализации автоматизации пользовательского интерфейса в элементе управления или приложении (результаты можно регистрировать). UIA Verify может интегрироваться в тестовый код и проводить регулярные, автоматизированные проверки или точечные проверки сценариев автоматизации пользовательского интерфейса и полезны для проверки того, что изменения приложений с установленными функциями не имеют новых проблем или регрессии. Проверка UIA находится в подпапке под именем UIAVerify в папке bin пакета SDK для Windows.

Доступный наблюдатель за событиями

Наблюдатель за событиями со специальными возможностями (AccEvent) проверяет, будут ли элементы пользовательского интерфейса приложения запускать правильную автоматизацию пользовательского интерфейса и события Microsoft Active Accessibility при изменении пользовательского интерфейса. Изменения в пользовательском интерфейсе могут возникать при изменении фокуса или при вызове, выборе или изменении состояния или свойства элемента пользовательского интерфейса. AccEvent обычно используется для отладки проблем и проверки правильности работы пользовательских и расширенных элементов управления.

Процедуры тестирования специальных возможностей

Создание первоочередного рабочего процесса доступности на основе автоматизации

Используйте тестирование специальных возможностей как контрольный пункт выпуска, так же как и модульные, интеграционные и тесты на надежность.

  1. Определите базовые требования доступности для основных пользовательских потоков и управления поведением.
  2. Добавьте автоматические проверки, выполняемые в запросах на вытягивание и CI, чтобы быстро обнаруживать регрессии.
  3. Останавливайте сборку при обнаружении критических проблем доступности и отслеживайте исключения, указывая владельца и срок действия.
  4. Запланировать ручную проверку с использованием экранного диктора и клавиатуры для сценариев, где требуется человеческое суждение.
  5. Повторное тестирование затронутых сценариев всякий раз, когда шаблоны, логика управления или поведение навигации изменяются.

Проверка доступности клавиатуры

Проверка поведения клавиатуры без ввода указателя. Подтвердите полную и логическую последовательность Tab во всех интерактивных элементах, ожидаемую навигацию с помощью клавиш стрелок в составных элементах управления и надежное выполнение действий с клавиатуры (обычно Enter или Spacebar) для каждой фокусируемой области команд.

Проверка коэффициента контрастности видимого текста

Используйте средства проверки контраста цветов, чтобы убедиться, что уровень контрастности видимого текста соответствует нормам. Исключения включают неактивные элементы пользовательского интерфейса, логотипы или декоративный текст, которые не передают никакой информации и могут быть перестроены без изменения значения. Дополнительные сведения о соотношении контрастности и исключениях см. в разделе "Доступные текстовые требования ". См. раздел "Методы для WCAG 2.0 G18" (в секции "Ресурсы") для инструментов, которые могут тестировать коэффициенты контрастности.

Замечание

Некоторые средства, перечисленные в методах WCAG 2.0 G18, нельзя использовать в интерактивном режиме с приложением Windows. Возможно, потребуется вручную ввести значения переднего плана и фона в инструменте, сделать снимки экрана пользовательского интерфейса приложения, а затем запустить средство коэффициента контрастности на изображении с экрана или запустить средство при открытии исходных растровых карт в программе редактирования изображений, а не во время загрузки этого изображения приложением.

Проверка приложения в высокой контрастности

Используйте приложение в то время как тема высокой контрастности активна, чтобы убедиться, что все элементы пользовательского интерфейса отображаются правильно. Все тексты должны быть читаемыми, и все изображения должны быть понятными. Настройте ресурсы словаря тем XAML или шаблоны элементов управления, чтобы исправить все проблемы темы, возникающие из-за элементов управления. В случаях, когда явные проблемы с высокой контрастностью не связаны с темами или элементами управления (например, из файлов изображений), предоставьте отдельные версии для использования при активной теме с высокой контрастностью.

Проверьте ваше приложение с настройками отображения

Проверьте масштабирование интерфейса пользователя при изменении разрешения DPI системы, включая сценарии масштабирования, связанные с требованиями доступности. Если отображаются регрессии макета или отрисовки, примените рекомендации по масштабированию макета и добавьте ресурсы для затронутых факторов масштабирования.

Проверка сценариев основного приложения с помощью экранного диктора

Используйте Экранный диктор, чтобы протестировать функцию чтения с экрана для вашего приложения.

Выполните следующие действия, чтобы протестировать приложение с помощью экранного диктора с помощью мыши и клавиатуры:

  1. Запустите экранный диктор, нажав клавиши с логотипом Windows + CTRL+ВВОД. В версиях до Windows 10 версии 1607 используйте клавиши с логотипом Windows + ВВОД для запуска Narrator.
  2. Перейдите к приложению с помощью клавиатуры с помощью клавиши TAB , клавиш со стрелками и клавиши caps Lock + со стрелками.
  3. При использовании вашего приложения слушайте, как экранный диктор читает элементы вашего пользовательского интерфейса, и вы можете проверить следующее:
    • Для каждого элемента управления убедитесь, что экранный диктор считывает все видимое содержимое. Кроме того, экранный диктор считывает имя каждого элемента управления, любое применимое состояние (флажок, выбранный и т. д.), а также тип элемента управления (кнопка, флажок, элемент списка и т. д.).
    • Если элемент является интерактивным, убедитесь, что экранный диктор может вызвать его действие, нажав клавиши Caps Lock + ВВОД.
    • Для каждой таблицы убедитесь, что экранный диктор правильно считывает имя таблицы, описание таблицы (если доступно), а также заголовки строк и столбцов.
  4. Нажмите клавиши Caps Lock + SHIFT+ ВВОД , чтобы найти приложение и убедиться, что все элементы управления отображаются в списке поиска, а имена элементов управления локализованы и доступны для чтения.
  5. Отключите монитор и попробуйте выполнить основные сценарии приложения с помощью клавиатуры и экранного диктора. Чтобы получить полный список команд экранного диктора и сочетаний клавиш, нажмите клавиши Caps Lock + F1.

Пока Нарратор запущен, включите режим разработчика с помощью Ctrl + Caps Lock + F12. Режим разработчика скрывает части экрана, оставляя видимыми только программно доступные объекты и текст, что упрощает проверку выходных данных, видимых экранным диктором.

Выполните следующие действия, чтобы протестировать приложение с помощью сенсорного режима экранного диктора:

Замечание

Экранный диктор автоматически переходит в сенсорный интерфейс на устройствах, поддерживающих 4 и более касаний. Экранный диктор не поддерживает сценарии с несколькими мониторами или мультисенсорные дигитайзеры на первичном экране.

  1. Ознакомьтесь с пользовательским интерфейсом и изучите макет.

    • Переход по пользовательскому интерфейсу с помощью жестов прокрутки с одним пальцем. Чтобы изменить категорию перемещаемых элементов, используйте пальцы влево или вправо, чтобы перемещаться между элементами. Категории включают все элементы, ссылки, таблицы, заголовки и т. д. Навигация с помощью жестов прокрутки с одним пальцем похожа на навигацию с помощью caps Lock + Стрелка.
    • Используйте жесты с табуляцией для навигации по фокусируемым элементам. Свайп тремя пальцами вправо или влево эквивалентно навигации с помощью Tab и Shift + Tab на клавиатуре.
    • Пространственный анализ пользовательского интерфейса одним пальцем. Проведите одним пальцем вверх и вниз или влево и вправо, чтобы экранный диктор прочитал элементы, на которые указывает палец. Вы можете использовать мышь в качестве альтернативы, так как она использует ту же логику хит-тестирования, что и перетаскивание одного пальца.
    • Прочитайте все окно и его содержимое, проведя тремя пальцами вверх. Это эквивалентно использованию Caps Lock + W.

    Если у вас есть важный элемент интерфейса, к которому вы не можете получить доступ, это может свидетельствовать о проблеме с доступностью.

  2. Взаимодействуйте с элементом управления, чтобы проверить его основные и вторичные действия, а также его поведение прокрутки.

    Основные действия включают в себя такие действия, как активация кнопки, размещение текстового курсора и установка фокуса на элемент управления. Вторичные действия включают такие действия, как выбор элемента списка или расширение кнопки, которая предлагает несколько вариантов.

    • Чтобы проверить основное действие: дважды коснитесь, или нажмите одним пальцем и коснитесь другим.
    • Чтобы проверить дополнительное действие: трижды прикоснитесь, или нажмите одним пальцем и дважды коснитесь другим.
    • Чтобы проверить поведение прокрутки: используйте движение двумя пальцами, чтобы прокрутить в нужном направлении.

    Некоторые элементы управления предоставляют дополнительные действия. Чтобы отобразить полный список, выполните одно касание четырьмя пальцами.

    Если элемент управления реагирует на мышь или клавиатуру, но не отвечает на основное или дополнительное сенсорное взаимодействие, элемент управления может потребоваться реализовать дополнительные шаблоны элементов управления автоматизации пользовательского интерфейса .

Кроме того, следует рассмотреть возможность использования средства AccScope для тестирования сценариев специальных возможностей экранного диктора с помощью приложения. Тема инструмента AccScope описывает, как настроить AccScope для тестирования сценариев Narrator.

Проверьте представление UI Automation для вашего приложения

Используйте средства проверки автоматизации пользовательского интерфейса для просмотра приложения в виде дерева элементов UIA, потребляемого вспомогательными технологиями.

AccScope полезен, так как он отображает дерево как список или визуальное наложение, позволяя сопоставлять структуру автоматизации с отображаемым пользовательским интерфейсом. Это эффективно даже для ранних прототипов пользовательского интерфейса, прежде чем реализована полная логика взаимодействия.

Убедитесь, что в каждом представлении специальных возможностей отображаются только необходимые элементы. Используйте AutomationProperties.AccessibilityView, чтобы исправить упущения или чрезмерную экспозицию, затем перепроверьте порядок вкладок и навигацию с помощью клавиш со стрелками для всех интерактивных элементов в контрольном представлении.