Читать онлайн Никита Климов - Доступная среда в современных приложениях. Методика тестирования программ с элементами доступной среды



Корректор Анастасия Лобанова

Дизайнер обложки Мария Фролова


© Никита Климов, 2025

© Мария Фролова, дизайн обложки, 2025


ISBN 978-5-0065-6266-0

Создано в интеллектуальной издательской системе Ridero

«Эта книга будет полезна для QA-специалистов и разработчиков, стремящихся улучшить свои навыки на системном уровне и идти в ногу со временем, а также для преподавателей, актуализирующих свои обучающие программы с учетом текущих тенденций.»

Артем Русов – QA евангелист,
Наставник на Udemy и Stepik,
техно-блоггер на Youtube,
автор телеграм канала
Artsiom Rusau QA Life.
⠀⠀

«Я никогда особо не задумывался на эту тему, но эта книга просто перевернула взгляд на тестирование в целом… 100% будет безумно полезна всем работающим QA и разработчикам в том числе!»

Алексей Коледачкин – AQA Lead,
основатель qa-playground.com.
Обучает людей автоматизации тестирования
и ведет телеграм канал
Алексей | AQA PROKA4

«Не могу не отметить и то, сколько полезных рекомендаций содержится в книге! Она охватывает все аспекты доступности – от семантики HTML до удобства навигации. Для тех из нас, кто хочет быть на шаг впереди в своей работе, это просто кладезь информации.»

Сергей Дмитриевский,
эксперт по frontend разработке
и автор популярного ютуб
канала про IT

Основываясь на вашем опыте, какие рекомендации вы можете дать другим компаниям по внедрению и тестированию доступности в их продуктах?


– В первую очередь, я бы рекомендовал руководствоваться стандартами и внедрять accessibility-тестирование на самых ранних этапах – когда вы еще только начинаете работать над продуктом. Предупредить ошибки намного проще, чем пытаться их исправить. И регулярно следить за обновлениями стандартов, проводить обучения для своих QA-специалистов.

Климов Никита
«Роль доступности в создании успешных цифровых продуктов». Forbes Kazakhstan. ТОО «United Media Group», 2024. Интернет-версия. 28 октября 2024 г.

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

Предисловие

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

Данная книга акцентирует внимание на важности создания доступного программного обеспечения для людей с ограниченными возможностями. Она поднимает вопрос о том, что многие приложения и веб-сайты не учитывают потребности таких пользователей, что делает их труднодоступными. Зачастую это связано с тем, что на данный момент очень мало системных подходов для проверки разработанного программного продукта на соответствие нормам инклюзивности. Для решения этой задачи автором была разработана уникальная методика Test Accessibility, которая рассматривается в данной книге.

Фундаментальный принцип авторской методики заключается в раннем включении проверок доступности в жизненный цикл разработки. Если раньше тестирование доступности часто рассматривали как финальный этап перед релизом, то теперь сознательно смещается акцент на более ранние стадии. Логика проста: чем раньше выявлены проблемы, тем дешевле и проще их исправить. Это приводит к отказу от фрагментарных решений и переходу к системной работе, когда проектирование интерфейсов, написание кода, создание тест-кейсов происходят с учетом требований инклюзивности. В итоге снижается риск, что перед самым релизом тестировщик столкнется с массивом недоработок, критичных для людей с ограничениями по зрению, слуху или моторике. Другая ключевая идея авторского подхода – использование повествовательной структуры тест-кейсов, сочетающейся с контрольными списками и расширенной системой критериев. Контрольные списки (чек-листы) стали привычным инструментом в QA-практике: они позволяют быстро проверять наличие или отсутствие определенных характеристик. Однако простая отметка «есть/нет» не всегда отражает сложный контекст: пользователь с ограниченным зрением не просто нуждается в альтернативном тексте к изображению, ему важно, чтобы этот текст был информативным и логичным. Поэтому методика предполагает расширить контрольные списки до повествовательных тест-кейсов. В таких сценариях тестировщик моделирует реальную историю взаимодействия: пользователь заходит на страницу, пытается оформить заказ или прочитать статью, параллельно используя программу чтения с экрана или клавиатурную навигацию. Повествовательный подход обеспечивает глубину: вместо формального «alt присутствует» тестировщик обращает внимание на качество описания, релевантность слов, удобство навигации, предсказуемость изменений фокуса. Для усиления этого подхода методика предлагает разбивать тесты на логические блоки, отражающие разные аспекты доступности: семантику HTML, корректность ARIA-атрибутов, достаточность контраста, наличие альтернативных описаний мультимедиа, удобство навигации, предсказуемость поведения форм.

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

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

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

Об авторе

Никита Климов имеет богатый опыт в области аналитики по качеству (QA), а также разработке и поддержке автоматизированных тестов. Недавние его проекты включают:


От автора


Я, Никита Климов,-человек, чья жизнь и работа пронизаны стремлением помогать людям. Я вижу свое призвание в том, чтобы делать мир людей с ограниченными возможностями лучше.

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

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

У меня многолетний опыт в области разработки и обеспечения доступности веб-приложений. Моя книга является результатом накопленного опыта в части обеспечения доступности веб-приложений и содержит уникальную методику Test Accessibility, основанную на контрольных списках, составленных для проверки приложений на соответствие требованиям WCAG.

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

Я делюсь своим опытом не только через книги, но и в виде консультаций и наставничества. Ко мне можно записаться на бесплатную консультацию https://adplist.org/mentors/nikita-klimov


Хотелось бы искренне поблагодарить

Wilco Fiers, Steven Lambert,Dan Bjorge, которые поддерживают open-source проект AXE-core. Огромное удовольствие сотрудничать с ними, работая над улучшением AXE DevTools и решением его недочетов. Вы вдохновляете на продвижение доступности, спасибо вам.

Глава 1. Доступная среда. Роль доступной среды в современных приложениях

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

1.1. Понятие доступной среды

Доступная среда (accessibility) – это не только физическое пространство, но и цифровая реальность, в которой пользователи могут взаимодействовать с информацией и технологиями без ограничений. Она охватывает все аспекты: от архитектурных решений до интерфейсов программного обеспечения.

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


Рис. 1. Нумероним для обеспечения доступности


При обсуждении темы доступности обычно применяется нумероним A11Y (рис.1). Этот нумероним расшифровывается как «доступность».

1.2. Важность доступности в современных приложениях

Согласно исследованиям, более 15% населения мира имеют различные формы инвалидности, из них порядка 15% те виды ограничения здоровья, для которых можно обеспечить комфортную программную среду с помощью элементов доступности (рис. 2), что подчеркивает необходимость создания программного обеспечения.


Рис. 2. Диаграмма распределения ограничения здоровья

по отдельным заболеваниям в процентном соотношении


Как отмечает известный исследователь в области доступности, «доступность – это не просто требование, это право каждого человека». Таким образом, при разработке программных продуктов важно учитывать потребности всех пользователей, включая людей с ограниченными возможностями.

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

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

1. зрительные:

– амблиопия,

– косоглазие,

– миопия,

– гиперметропия,

– астигматизм,

– анизометропия,

– нистагм,

– атрофия зрительного нерва,

– слабовидение,

– ретинопатия,

– катаракта,

– глаукома,

– туннельное зрение,

– слепота.

2. слуховые:

– тугоухость различной степени,

– глухота.

3. неврологические:

– приступы, такие как эпилепсия, которые могут быть спровоцированы из-за неверной анимации (вспышки, картинка дергается),

– дислексия.


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